*******************************************************************************
*** Description: 	This document provides the code for reproducing the 	***
***					figures in the Supporting Information for the paper, 	***	
***					"Does Compulsory Voting Affect How Voters Choose? A 	***	
***					Test Using a Combined Conjoint and Regression 			***	
***					Discontinuity Analysis," which is authored by Shane P. 	***	
***					Singh and appears in Comparative Political Studies.		***	
***					It also provides the code for reproducing statistics 	***
***					associated with claims made in the text.				***
*******************************************************************************


**************
**************
*Set the Version                                                                                                                                 
**************
**************
version 13.1


**************
**************
*Install Required Packages                                                                                                                      
**************
**************
ssc install coefplot 
ssc install grc1leg 
net install st0366, from(http://www.stata-journal.com/software/sj14-4) //*this will get "rdbwselect"
net install st0522, from(http://www.stata-journal.com/software/sj18-1/) //*this will get "rddensity"
net install lpdensity, from(https://raw.githubusercontent.com/nppackages/lpdensity/master/stata) //*needed for "rddensity"


**************
**************
*Increase the Maximum Number of vVariables That Can Be Included in Stata's Estimation Commands.
**************
**************		
set matsize 11000		
		

**************
**************
*Figure SI2
**************
**************

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_CPS.dta", clear

***
*Rescale demographic covariates to 0-1 range. 
***
sum educ 			
gen educ_01 = ((educ - r(min))/(r(max) - r(min))) 

sum income	
gen income_01 = ((income - r(min))/(r(max) - r(min))) 

sum ideo 			
gen ideo_01 = ((ideo - r(min))/(r(max) - r(min)))


***
*Get the regression discontinuity optimal bandwidths for the younger group. 
***
rdbwselect female days_over_18_election if days_over_18_election<=730 & days_over_18_election>=-730, c(0) p(2) kernel(uniform) all //*only allowing in observations within two years of age above and below 18
global h_CCT_female_18 = e(h_CCT) 

rdbwselect educ days_over_18_election if days_over_18_election<=730 & days_over_18_election>=-730, c(0) p(2) kernel(uniform) all //*only allowing in observations within two years of age above and below 18
global h_CCT_educ_18 = e(h_CCT) 

rdbwselect income days_over_18_election if days_over_18_election<=730 & days_over_18_election>=-730, c(0) p(2) kernel(uniform) all //*only allowing in observations within two years of age above and below 18
global h_CCT_income_18 = e(h_CCT) 

rdbwselect ideo days_over_18_election if days_over_18_election<=730 & days_over_18_election>=-730, c(0) p(2) kernel(uniform) all //*only allowing in observations within two years of age above and below 18
global h_CCT_ideo_18 = e(h_CCT) 

***
*Create a series of copies of the age indicator for graphing purposes for the younger group. 
***
gen age_18_or_over_election_female =  age_18_or_over_election
gen age_18_or_over_election_educ =  age_18_or_over_election
gen age_18_or_over_election_income =  age_18_or_over_election
gen age_18_or_over_election_ideo =  age_18_or_over_election



***
*Estimate the RD models and store the results for the younger group.
***
reg female i.age_18_or_over_election_female##c.days_over_18_election if days_over_18_election>=-$h_CCT_female_18 & days_over_18_election<=$h_CCT_female_18
margins,  dydx(age_18_or_over_election_female) at(days_over_18_election = (0)) post
estimates store female_18

reg educ_01 i.age_18_or_over_election_educ##c.days_over_18_election if days_over_18_election>=-$h_CCT_educ_18 & days_over_18_election<=$h_CCT_educ_18
margins,  dydx(age_18_or_over_election_educ)  at(days_over_18_election = (0)) post
estimates store educ_01_18

reg income_01 i.age_18_or_over_election_income##c.days_over_18_election if days_over_18_election>=-$h_CCT_income_18 & days_over_18_election<=$h_CCT_income_18
margins,  dydx(age_18_or_over_election_income)  at(days_over_18_election = (0)) post
estimates store income_01_18

reg ideo_01 i.age_18_or_over_election_ideo##c.days_over_18_election if days_over_18_election>=-$h_CCT_ideo_18 & days_over_18_election<=$h_CCT_ideo_18
margins,  dydx(age_18_or_over_election_ideo)  at(days_over_18_election = (0)) post
estimates store ideo_01_18


***
*Plot the results for the younger group.
***
coefplot 	///
			(female_18,  offset(0) msymbol(circle) msize(medlarge)  mcolor(black) ciopts(color(black*.55) lwidth(medium))) ///			
			(educ_01_18,  offset(0) msymbol(circle) msize(medlarge)  mcolor(black) ciopts(color(black*.55) lwidth(medium))) ///			
			(income_01_18,  offset(0) msymbol(circle) msize(medlarge)  mcolor(black) ciopts(color(black*.55) lwidth(medium))) ///	
			(ideo_01_18,  offset(0) msymbol(circle) msize(medlarge)  mcolor(black) ciopts(color(black*.55) lwidth(medium))) ///			
		, scheme(s1color)  title("") levels(95)		///
		xline(0, lcolor(gs8) lpattern(dash))  ylabel( , labsize(medsmall))  xlabel(-.5(.1).5)  ///
		legend(off) ysize(1.5) scale(1.5)	///
		xtitle("Estimated Effect of Being Just Over Age 18 on Election Day" "on Mean Value of Covariate", size(medium))  ytitle("") 	///
		coeflabels(	1.age_18_or_over_election_female  = 		"Female"   ///
					1.age_18_or_over_election_educ  = 			"Education Level"   ///
					1.age_18_or_over_election_income  = 		"Family Income"   ///
					1.age_18_or_over_election_ideo  = 			"Ideology"   ///
					)   graphregion(margin(small)) ///
					grid(nogextend) name(age_18_balance, replace)



***
*Get the regression discontinuity optimal bandwidths for the older group. 
***
rdbwselect female days_over_70_election if days_over_70_election<=1095 & days_over_70_election>=-1095, c(0) p(2) kernel(uniform) all //*only allowing in observations within three years of age above and below 70
global h_CCT_female_70 = e(h_CCT) 

rdbwselect educ days_over_70_election if days_over_70_election<=1095 & days_over_70_election>=-1095, c(0) p(2) kernel(uniform) all //*only allowing in observations within three years of age above and below 70
global h_CCT_educ_70 = e(h_CCT) 

rdbwselect income days_over_70_election if days_over_70_election<=1095 & days_over_70_election>=-1095, c(0) p(2) kernel(uniform) all //*only allowing in observations within three years of age above and below 70
global h_CCT_income_70 = e(h_CCT) 

rdbwselect ideo days_over_70_election if days_over_70_election<=1095 & days_over_70_election>=-1095, c(0) p(2) kernel(uniform) all //*only allowing in observations within three years of age above and below 70
global h_CCT_ideo_70 = e(h_CCT) 


***
*Create a series of copies of the age indicator for graphing purposes for the older group. 
***
gen age_70_or_over_election_female =  age_70_or_over_election
gen age_70_or_over_election_educ =  age_70_or_over_election
gen age_70_or_over_election_income =  age_70_or_over_election
gen age_70_or_over_election_ideo =  age_70_or_over_election

***
*Estimate the RD models and store the results for the older group.
***
reg female i.age_70_or_over_election_female##c.days_over_70_election if days_over_70_election>=-$h_CCT_female_70 & days_over_70_election<=$h_CCT_female_70
margins,  dydx(age_70_or_over_election_female) at(days_over_70_election = (0)) post
estimates store female_70

reg educ_01 i.age_70_or_over_election_educ##c.days_over_70_election if days_over_70_election>=-$h_CCT_educ_70 & days_over_70_election<=$h_CCT_educ_70
margins,  dydx(age_70_or_over_election_educ)  at(days_over_70_election = (0)) post
estimates store educ_01_70

reg income_01 i.age_70_or_over_election_income##c.days_over_70_election if days_over_70_election>=-$h_CCT_income_70 & days_over_70_election<=$h_CCT_income_70
margins,  dydx(age_70_or_over_election_income)  at(days_over_70_election = (0)) post
estimates store income_01_70

reg ideo_01 i.age_70_or_over_election_ideo##c.days_over_70_election if days_over_70_election>=-$h_CCT_ideo_70 & days_over_70_election<=$h_CCT_ideo_70
margins,  dydx(age_70_or_over_election_ideo)  at(days_over_70_election = (0)) post
estimates store ideo_01_70


***
*Plot the results for the older group.
***
coefplot 	///
			(female_70,  offset(0) msymbol(circle) msize(medlarge)  mcolor(black) ciopts(color(black*.55) lwidth(medium))) ///			
			(educ_01_70,  offset(0) msymbol(circle) msize(medlarge)  mcolor(black) ciopts(color(black*.55) lwidth(medium))) ///			
			(income_01_70,  offset(0) msymbol(circle) msize(medlarge)  mcolor(black) ciopts(color(black*.55) lwidth(medium))) ///	
			(ideo_01_70,  offset(0) msymbol(circle) msize(medlarge)  mcolor(black) ciopts(color(black*.55) lwidth(medium))) ///			
		, scheme(s1color)  title("") levels(95)	 	///
		xline(0, lcolor(gs8) lpattern(dash))  ylabel( , labsize(medsmall))  xlabel(-.5(.1).5)  ///
		legend(off) ysize(1.5) scale(1.5)	///
		xtitle("Estimated Effect of Being Just Over Age 70 on Election Day" "on Mean Value of Covariate", size(medium))  ytitle("") 	///
		coeflabels(	1.age_70_or_over_election_female  = 		"Female"   ///
					1.age_70_or_over_election_educ  = 			"Education Level"   ///
					1.age_70_or_over_election_income  = 		"Family Income"   ///
					1.age_70_or_over_election_ideo  = 			"Ideology"   ///
					)  graphregion(margin(small)) ///
					grid(nogextend) name(age_70_balance, replace) 
	

***
*Combine the graphs for those near the age 18 and 70 cutoffs. 
***
graph combine ///
	age_18_balance ///
	age_70_balance ///
	,   scheme(s1color)  rows(2)  graphregion(margin(zero)) iscale(.7) xsize(10) imargin(1 1 5 5)
	
	
	
**************
**************
*Figure SI3
**************
**************

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_CPS.dta", clear


***
*Create the graph for those near the age 18 cutoff. 
***
twoway histogram days_over_18_election if age_18_or_over_election ~= .,  ///
	frequency fcolor(gs2) fintensity(100) lcolor(gs2) lwidth(medthin) gap(0) width(44) ///
	xsize(5) scheme(s1color) title("") note("") xtitle(Days Over Age 18 on Election Day)	///
	xlabel(-1100 (275) 1100, labsize(small))  ylabel(0(20)80, labsize(small))  ///
	name(age18, replace)  graphregion(margin(small))

***
*Create the graph for those near the age 70 cutoff. 
***
twoway histogram days_over_70_election if age_70_or_over_election ~= .,  ///
	frequency fcolor(gs2) fintensity(100) lcolor(gs2) lwidth(medthin) gap(0) width(44) ///
	xsize(5) scheme(s1color) title("") note("") xtitle(Days Over Age 70 on Election Day)	///
	xlabel(-1100 (275) 1100, labsize(small))  ylabel(0(20)80, labsize(small))  ///
	name(age70, replace)  graphregion(margin(small))


***
*Combine the graphs for those near the age 18 and 70 cutoffs. 
***
graph combine  	///
age18 	///
age70 	///
	, rows(1)  scheme(s1mono) scale(1.4) xsize(9) graphregion(margin(zero))

		



**************
**************
*Evidence for Claim Made in the Text: "The two-sided p-value associated with the null 
*hypothesis for the age 18 cutoff is 0.218, and for the age 70 cutoff, it is 0.747. 
**************
**************	

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_CPS.dta", clear


***
*Do the density tests. 
***
rddensity days_over_18_election if days_over_18_election<=730 & days_over_18_election>=-730, c(0) p(1) kernel(uniform) 

rddensity days_over_70_election if days_over_70_election<=1095 & days_over_70_election>=-1095, c(0) p(1) kernel(uniform) 



**************
**************
*Figure SI4
**************
**************	

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_Conjoint_CPS.dta", clear

***
*Create a variable to store saved p-values and labels
***
gen carryover_ps_value = ""
replace carryover_ps_value = "Does Not Want to Reduce Deficit" in 1
replace carryover_ps_value = "Reduce Deficit w/ Tax Increases" in 2
replace carryover_ps_value = "Reduce Deficit w/ Spending Cuts" in 3
replace carryover_ps_value = "Argentina Should Pay IMF Loans in Full" in 4
replace carryover_ps_value = "Argentina Should Renegotiate IMF Loans" in 5
replace carryover_ps_value = "Argentina Should Not Pay IMF Loans" in 6
replace carryover_ps_value = "Abortion Should be Illegal" in 7
replace carryover_ps_value = "Abortion Should be Legal" in 8
replace carryover_ps_value = "5 Years" in 9
replace carryover_ps_value = "10 Years" in 10
replace carryover_ps_value = "15 Years" in 11
replace carryover_ps_value = "Female" in 12
replace carryover_ps_value = "Married (Two Children)" in 13
replace carryover_ps_value = "Married (No Children)" in 14
replace carryover_ps_value = "Single (Divorced)" in 15
replace carryover_ps_value = "Single (Never Married)" in 16
replace carryover_ps_value = "Jazz" in 17
replace carryover_ps_value = "Pop" in 18
replace carryover_ps_value = "Rock" in 19
replace carryover_ps_value = "Tango" in 20
replace carryover_ps_value = "Asado" in 21
replace carryover_ps_value = "Empanadas" in 22
replace carryover_ps_value = "Provoleta" in 23



***
*Estimate AMCEs by task for those near the age 18 cutoff. 
***	
reg vote_choice_conjoint  i.at_encoded*##i.task if age_18_or_over_election~=. & days_over_18_election>=(-730) & days_over_70_election<=(730), cl(respondent) baselevels
estimates store conjoint_18_tasks


***
*Create variable to hold p-values from F-tests of joint significance of coefficients on interactions with task number.
***
gen carryover_ps_18 = .


***
*Test joint significance of with F-tests of the joint significance of the interaction terms.
***
estimates restore conjoint_18_tasks


testparm 1.at_encoded_opinion_deficit#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Does Not Want to Reduce Deficit" 
testparm 2.at_encoded_opinion_deficit#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Reduce Deficit w/ Tax Increases" 
testparm 3.at_encoded_opinion_deficit#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Reduce Deficit w/ Spending Cuts" 

testparm 1.at_encoded_opinion_IMF#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Argentina Should Pay IMF Loans in Full" 
testparm 2.at_encoded_opinion_IMF#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Argentina Should Renegotiate IMF Loans" 
testparm 3.at_encoded_opinion_IMF#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Argentina Should Not Pay IMF Loans" 

testparm 1.at_encoded_opinion_abortion#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Abortion Should be Illegal" 
testparm 2.at_encoded_opinion_abortion#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Abortion Should be Legal" 

testparm 1.at_encoded_experience#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "5 Years" 
testparm 2.at_encoded_experience#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "10 Years" 
testparm 3.at_encoded_experience#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "15 Years" 

testparm 1.at_encoded_gender#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Female" 

testparm 1.at_encoded_family#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Married (Two Children)" 
testparm 2.at_encoded_family#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Married (No Children)" 
testparm 3.at_encoded_family#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Single (Divorced)" 
testparm 4.at_encoded_family#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Single (Never Married)" 

testparm 1.at_encoded_favorite_music#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Jazz" 
testparm 2.at_encoded_favorite_music#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Pop" 
testparm 3.at_encoded_favorite_music#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Rock" 
testparm 4.at_encoded_favorite_music#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Tango" 


testparm 1.at_encoded_favorite_food#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Asado" 
testparm 2.at_encoded_favorite_food#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Empanadas" 
testparm 3.at_encoded_favorite_food#i.task
replace  carryover_ps_18 =  r(p) if carryover_ps_value == "Provoleta" 


***
*Create the plot for those in the younger age group. 
***	
egen order_18_carryover = rank(carryover_ps_18)
labmask order_18_carryover, val(carryover_ps_value)

twoway  scatter   order_18_carryover carryover_ps_18 /// 
			,	scheme(s1mono) graphregion(margin(tiny)) ///
				msymbol(circle) mcolor(black) ///
				xlabel(.05 .95, labsize(vsmall) ) ///
				ylabel(1(1)23, valuelabel ang(0) labsize(vsmall)) ///
				ytitle("") xtitle("{it:p}-value Associated with {it:F}-test of Joint" " Significance of Interaction Coefficients", size(vsmall))   ///
				xline(.05, lcolor(red) lpattern(dash)) 	///
				ysize(5) title("Age 18 Threshold", size(small)) ///
				name(task_ints_age18, replace)

		

***
*Estimate AMCEs by task for those near the age 70 cutoff. 
***	
reg vote_choice_conjoint  i.at_encoded*##i.task if age_70_or_over_election~=. & days_over_70_election>=(-1095) & days_over_70_election<=(1095), cl(respondent) baselevels
estimates store conjoint_70_tasks


***
*Create variable to hold p-values from F-tests of joint significance of coefficients on interactions with task number.
***
gen carryover_ps_70 = .


***
*Test joint significance of with F-tests of the joint significance of the interaction terms.
***
estimates restore conjoint_70_tasks

testparm 1.at_encoded_opinion_deficit#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Does Not Want to Reduce Deficit" 
testparm 2.at_encoded_opinion_deficit#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Reduce Deficit w/ Tax Increases" 
testparm 3.at_encoded_opinion_deficit#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Reduce Deficit w/ Spending Cuts" 

testparm 1.at_encoded_opinion_IMF#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Argentina Should Pay IMF Loans in Full" 
testparm 2.at_encoded_opinion_IMF#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Argentina Should Renegotiate IMF Loans" 
testparm 3.at_encoded_opinion_IMF#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Argentina Should Not Pay IMF Loans" 

testparm 1.at_encoded_opinion_abortion#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Abortion Should be Illegal" 
testparm 2.at_encoded_opinion_abortion#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Abortion Should be Legal" 

testparm 1.at_encoded_experience#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "5 Years" 
testparm 2.at_encoded_experience#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "10 Years" 
testparm 3.at_encoded_experience#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "15 Years" 

testparm 1.at_encoded_gender#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Female" 

testparm 1.at_encoded_family#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Married (Two Children)" 
testparm 2.at_encoded_family#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Married (No Children)" 
testparm 3.at_encoded_family#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Single (Divorced)" 
testparm 4.at_encoded_family#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Single (Never Married)" 

testparm 1.at_encoded_favorite_music#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Jazz" 
testparm 2.at_encoded_favorite_music#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Pop" 
testparm 3.at_encoded_favorite_music#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Rock" 
testparm 4.at_encoded_favorite_music#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Tango" 


testparm 1.at_encoded_favorite_food#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Asado" 
testparm 2.at_encoded_favorite_food#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Empanadas" 
testparm 3.at_encoded_favorite_food#i.task
replace  carryover_ps_70 =  r(p) if carryover_ps_value == "Provoleta" 


***
*Create the plot for those in older age group. 
***	
egen order_70_carryover = rank(carryover_ps_70)
labmask order_70_carryover, val(carryover_ps_value)

twoway  scatter   order_70_carryover carryover_ps_70 /// 
			,	scheme(s1mono) graphregion(margin(tiny)) ///
				msymbol(circle) mcolor(black) ///
				xlabel(.05 .95, labsize(vsmall) ) ///
				ylabel(1(1)23, valuelabel ang(0) labsize(vsmall)) ///
				ytitle("") xtitle("{it:p}-value Associated with {it:F}-test of Joint" " Significance of Interaction Coefficients", size(vsmall))   ///
				xline(.05, lcolor(red) lpattern(dash)) 	///
				ysize(5) title("Age 70 Threshold", size(small)) ///
				name(task_ints_age70, replace)

	

***
*Combine the graphs for those near the age 18 and 70 cutoffs. 
***
graph combine  	///
	task_ints_age18 	///
	task_ints_age70 	///
	, rows(1) scheme(s1mono) xcommon ysize(4) scale(1.1) graphregion(margin(zero))
		
		
		

**************
**************
*Figure SI5
**************
**************	

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_Conjoint_CPS.dta", clear


***
*Create candidate order variable, assigning a 1 to the second profile in each task.
***
gen candidate_order = 0
replace candidate_order = 1 if candidate == 2 	& task == 1
replace candidate_order = 1 if candidate == 4 	& task == 2
replace candidate_order = 1 if candidate == 6 	& task == 3
replace candidate_order = 1 if candidate == 8 	& task == 4
replace candidate_order = 1 if candidate == 10 	& task == 5


***
*Create a variable to store saved p-values and labels
***
gen profile_ps_value = ""
replace profile_ps_value = "Does Not Want to Reduce Deficit" in 1
replace profile_ps_value = "Reduce Deficit w/ Tax Increases" in 2
replace profile_ps_value = "Reduce Deficit w/ Spending Cuts" in 3
replace profile_ps_value = "Argentina Should Pay IMF Loans in Full" in 4
replace profile_ps_value = "Argentina Should Renegotiate IMF Loans" in 5
replace profile_ps_value = "Argentina Should Not Pay IMF Loans" in 6
replace profile_ps_value = "Abortion Should be Illegal" in 7
replace profile_ps_value = "Abortion Should be Legal" in 8
replace profile_ps_value = "5 Years" in 9
replace profile_ps_value = "10 Years" in 10
replace profile_ps_value = "15 Years" in 11
replace profile_ps_value = "Female" in 12
replace profile_ps_value = "Married (Two Children)" in 13
replace profile_ps_value = "Married (No Children)" in 14
replace profile_ps_value = "Single (Divorced)" in 15
replace profile_ps_value = "Single (Never Married)" in 16
replace profile_ps_value = "Jazz" in 17
replace profile_ps_value = "Pop" in 18
replace profile_ps_value = "Rock" in 19
replace profile_ps_value = "Tango" in 20
replace profile_ps_value = "Asado" in 21
replace profile_ps_value = "Empanadas" in 22
replace profile_ps_value = "Provoleta" in 23



***
*Estimate AMCEs by profile for those near the age 18 cutoff. 
***	
reg vote_choice_conjoint  i.at_encoded*##i.candidate_order if age_18_or_over_election~=. & days_over_18_election>=(-730) & days_over_70_election<=(730), cl(respondent) baselevels
estimates store conjoint_18_profiles


***
*Create variable to hold p-values from F-tests of joint significance of coefficients on interactions with profile number.
***
gen profile_ps_18 = .


***
*Test joint significance of with F-tests of the joint significance of the interaction terms.
***
estimates restore conjoint_18_profiles


testparm 1.at_encoded_opinion_deficit#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Does Not Want to Reduce Deficit" 
testparm 2.at_encoded_opinion_deficit#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Reduce Deficit w/ Tax Increases" 
testparm 3.at_encoded_opinion_deficit#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Reduce Deficit w/ Spending Cuts" 

testparm 1.at_encoded_opinion_IMF#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Argentina Should Pay IMF Loans in Full" 
testparm 2.at_encoded_opinion_IMF#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Argentina Should Renegotiate IMF Loans" 
testparm 3.at_encoded_opinion_IMF#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Argentina Should Not Pay IMF Loans" 

testparm 1.at_encoded_opinion_abortion#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Abortion Should be Illegal" 
testparm 2.at_encoded_opinion_abortion#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Abortion Should be Legal" 

testparm 1.at_encoded_experience#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "5 Years" 
testparm 2.at_encoded_experience#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "10 Years" 
testparm 3.at_encoded_experience#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "15 Years" 

testparm 1.at_encoded_gender#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Female" 

testparm 1.at_encoded_family#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Married (Two Children)" 
testparm 2.at_encoded_family#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Married (No Children)" 
testparm 3.at_encoded_family#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Single (Divorced)" 
testparm 4.at_encoded_family#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Single (Never Married)" 

testparm 1.at_encoded_favorite_music#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Jazz" 
testparm 2.at_encoded_favorite_music#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Pop" 
testparm 3.at_encoded_favorite_music#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Rock" 
testparm 4.at_encoded_favorite_music#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Tango" 


testparm 1.at_encoded_favorite_food#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Asado" 
testparm 2.at_encoded_favorite_food#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Empanadas" 
testparm 3.at_encoded_favorite_food#i.candidate_order
replace  profile_ps_18 =  r(p) if profile_ps_value == "Provoleta" 


***
*Create the plot for those in the younger age group. 
***	
egen order_18_profile = rank(profile_ps_18)
labmask order_18_profile, val(profile_ps_value)

twoway  scatter   order_18_profile profile_ps_18 /// 
			,	scheme(s1mono) graphregion(margin(tiny)) ///
				msymbol(circle) mcolor(black) ///
				xlabel(.05 .95, labsize(vsmall) ) ///
				ylabel(1(1)23, valuelabel ang(0) labsize(vsmall)) ///
				ytitle("") xtitle("Two-Sided {it:p}-value Associated with {it:t}-test" "of Significance of Interaction Coefficients", size(vsmall))   ///
				xline(.05, lcolor(red) lpattern(dash)) 	///
				ysize(5) title("Age 18 Threshold", size(small)) ///
				name(profile_ints_age18, replace)


***
*Estimate AMCEs by profile for those near the age 70 cutoff. 
***	
reg vote_choice_conjoint  i.at_encoded*##i.candidate_order if age_70_or_over_election~=. & days_over_70_election>=(-1095) & days_over_70_election<=(1095), cl(respondent) baselevels
estimates store conjoint_70_profiles


***
*Create variable to hold p-values from F-tests of joint significance of coefficients on interactions with profile number.
***
gen profile_ps_70 = .


***
*Test joint significance of with F-tests of the joint significance of the interaction terms.
***
estimates restore conjoint_70_profiles

testparm 1.at_encoded_opinion_deficit#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Does Not Want to Reduce Deficit" 
testparm 2.at_encoded_opinion_deficit#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Reduce Deficit w/ Tax Increases" 
testparm 3.at_encoded_opinion_deficit#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Reduce Deficit w/ Spending Cuts" 

testparm 1.at_encoded_opinion_IMF#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Argentina Should Pay IMF Loans in Full" 
testparm 2.at_encoded_opinion_IMF#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Argentina Should Renegotiate IMF Loans" 
testparm 3.at_encoded_opinion_IMF#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Argentina Should Not Pay IMF Loans" 

testparm 1.at_encoded_opinion_abortion#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Abortion Should be Illegal" 
testparm 2.at_encoded_opinion_abortion#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Abortion Should be Legal" 

testparm 1.at_encoded_experience#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "5 Years" 
testparm 2.at_encoded_experience#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "10 Years" 
testparm 3.at_encoded_experience#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "15 Years" 

testparm 1.at_encoded_gender#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Female" 

testparm 1.at_encoded_family#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Married (Two Children)" 
testparm 2.at_encoded_family#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Married (No Children)" 
testparm 3.at_encoded_family#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Single (Divorced)" 
testparm 4.at_encoded_family#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Single (Never Married)" 

testparm 1.at_encoded_favorite_music#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Jazz" 
testparm 2.at_encoded_favorite_music#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Pop" 
testparm 3.at_encoded_favorite_music#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Rock" 
testparm 4.at_encoded_favorite_music#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Tango" 


testparm 1.at_encoded_favorite_food#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Asado" 
testparm 2.at_encoded_favorite_food#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Empanadas" 
testparm 3.at_encoded_favorite_food#i.candidate_order
replace  profile_ps_70 =  r(p) if profile_ps_value == "Provoleta" 


***
*Create the plot for those in the older age group. 
***	
egen order_70_profile = rank(profile_ps_70)
labmask order_70_profile, val(profile_ps_value)

twoway  scatter   order_70_profile profile_ps_70 /// 
			,	scheme(s1mono) graphregion(margin(tiny)) ///
				msymbol(circle) mcolor(black) ///
				xlabel(.05 .95, labsize(vsmall) ) ///
				ylabel(1(1)23, valuelabel ang(0) labsize(vsmall)) ///
				ytitle("") xtitle("Two-Sided {it:p}-value Associated with {it:t}-test" "of Significance of Interaction Coefficients", size(vsmall))   ///
				xline(.05, lcolor(red) lpattern(dash)) 	///
				ysize(5) title("Age 70 Threshold", size(small)) ///
				name(profile_ints_age70, replace)


***
*Combine the graphs for those near the age 18 and 70 cutoffs. 
***
graph combine  	///
	profile_ints_age18 	///
	profile_ints_age70 	///
	, rows(1) scheme(s1mono) xcommon ysize(4) scale(1.1) graphregion(margin(zero)) 		
		
		
**************
**************
*Figures SI6-SI13
**************
**************

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_Conjoint_CPS.dta", clear

***
*Get the regression discontinuity optimal bandwidth for the younger group. 
***
rdbwselect vote_choice_conjoint  days_over_18_election if days_over_18_election>=(-730) & days_over_18_election<=(730), c(0) p(1) kernel(uniform) all //*only allowing in observations within two years of age above and below 18
global h_CCT_vote_choice_conjoint_18 = e(h_CCT)


***
*Create a new file to store the differences in marginal means and associated standard errors over different bandwidths.
***
postfile bandwidth ///
		b_0_at_encoded_opinion_deficit  ///
		se_0_at_encoded_opinion_deficit ///
		b_1_at_encoded_opinion_deficit  ///
		se_1_at_encoded_opinion_deficit ///
		b_2_at_encoded_opinion_deficit  ///
		se_2_at_encoded_opinion_deficit ///		
		b_3_at_encoded_opinion_deficit  ///
		se_3_at_encoded_opinion_deficit ///		
		b_0_at_encoded_opinion_IMF ///
		se_0_at_encoded_opinion_IMF ///
		b_1_at_encoded_opinion_IMF ///
		se_1_at_encoded_opinion_IMF ///
		b_2_at_encoded_opinion_IMF ///
		se_2_at_encoded_opinion_IMF ///
		b_3_at_encoded_opinion_IMF ///
		se_3_at_encoded_opinion_IMF ///	
		b_0_at_encoded_opinion_abortion ///	
		se_0_at_encoded_opinion_abortion ///
		b_1_at_encoded_opinion_abortion ///	
		se_1_at_encoded_opinion_abortion ///	
		b_2_at_encoded_opinion_abortion ///	
		se_2_at_encoded_opinion_abortion ///	
		b_0_at_encoded_experience ///	
		se_0_at_encoded_experience ///
		b_1_at_encoded_experience ///	
		se_1_at_encoded_experience ///	
		b_2_at_encoded_experience ///	
		se_2_at_encoded_experience ///	
		b_3_at_encoded_experience ///	
		se_3_at_encoded_experience ///	
		b_male  ///
		se_male ///
		b_female  ///
		se_female ///
		b_0_at_encoded_family ///	
		se_0_at_encoded_family ///	
		b_1_at_encoded_family ///	
		se_1_at_encoded_family ///	
		b_2_at_encoded_family ///	
		se_2_at_encoded_family ///	
		b_3_at_encoded_family ///	
		se_3_at_encoded_family ///	
		b_4_at_encoded_family ///	
		se_4_at_encoded_family ///	
		b_0_at_encoded_favorite_music ///	
		se_0_at_encoded_favorite_music ///	
		b_1_at_encoded_favorite_music ///	
		se_1_at_encoded_favorite_music ///	
		b_2_at_encoded_favorite_music ///	
		se_2_at_encoded_favorite_music ///	
		b_3_at_encoded_favorite_music ///	
		se_3_at_encoded_favorite_music ///	
		b_4_at_encoded_favorite_music ///	
		se_4_at_encoded_favorite_music ///
		b_0_at_encoded_favorite_food ///	
		se_0_at_encoded_favorite_food ///	
		b_1_at_encoded_favorite_food ///	
		se_1_at_encoded_favorite_food ///	
		b_2_at_encoded_favorite_food ///	
		se_2_at_encoded_favorite_food ///	
		b_3_at_encoded_favorite_food ///	
		se_3_at_encoded_favorite_food ///	
		bandwidth_size ///
		n_obs ///
using "bandwidth_age18.dta", replace


***
*Estimate the RD model over different bandwidths for the younger group and record differences in marginal means..
***

forvalues days_counter = 30(4)730 {	
	reg vote_choice_conjoint  i.age_18_or_over_election##i.at_encoded_*##c.days_over_18_election if  abs(days_over_18_election) <= `days_counter' , cl(respondent)  
	scalar bandwidth_size = `days_counter'
	scalar n_obs = e(N_clust) 
	
	margins at_encoded_*,  at(days_over_18_election = (0) age_18_or_over_election = (0 1)) post  base coefleg
	
	lincom  _b[2._at#0bn.at_encoded_opinion_deficit] -  _b[1bn._at#0bn.at_encoded_opinion_deficit] 
	scalar b_0_at_encoded_opinion_deficit =  r(estimate)
	scalar se_0_at_encoded_opinion_deficit = r(se)
	lincom  _b[2._at#1.at_encoded_opinion_deficit] -  _b[1bn._at#1.at_encoded_opinion_deficit] 
	scalar b_1_at_encoded_opinion_deficit =  r(estimate)
	scalar se_1_at_encoded_opinion_deficit = r(se)
	lincom  _b[2._at#2.at_encoded_opinion_deficit] -  _b[1bn._at#2.at_encoded_opinion_deficit] 
	scalar b_2_at_encoded_opinion_deficit =  r(estimate)
	scalar se_2_at_encoded_opinion_deficit = r(se)
	lincom  _b[2._at#3.at_encoded_opinion_deficit] -  _b[1bn._at#3.at_encoded_opinion_deficit] 
	scalar b_3_at_encoded_opinion_deficit =  r(estimate)
	scalar se_3_at_encoded_opinion_deficit = r(se)

	lincom  _b[2._at#0bn.at_encoded_opinion_IMF] -  _b[1bn._at#0bn.at_encoded_opinion_IMF] 
	scalar b_0_at_encoded_opinion_IMF =  r(estimate)
	scalar se_0_at_encoded_opinion_IMF = r(se)
	lincom  _b[2._at#1.at_encoded_opinion_IMF] -  _b[1bn._at#1.at_encoded_opinion_IMF] 
	scalar b_1_at_encoded_opinion_IMF =  r(estimate)
	scalar se_1_at_encoded_opinion_IMF = r(se)
	lincom  _b[2._at#2.at_encoded_opinion_IMF] -  _b[1bn._at#2.at_encoded_opinion_IMF] 
	scalar b_2_at_encoded_opinion_IMF =  r(estimate)
	scalar se_2_at_encoded_opinion_IMF = r(se)
	lincom  _b[2._at#3.at_encoded_opinion_IMF] -  _b[1bn._at#3.at_encoded_opinion_IMF] 
	scalar b_3_at_encoded_opinion_IMF =  r(estimate)
	scalar se_3_at_encoded_opinion_IMF = r(se)
	
	lincom  _b[2._at#0bn.at_encoded_opinion_abortion] -  _b[1bn._at#0bn.at_encoded_opinion_abortion] 
	scalar b_0_at_encoded_opinion_abortion =  r(estimate)
	scalar se_0_at_encoded_opinion_abortion = r(se)
	lincom  _b[2._at#1.at_encoded_opinion_abortion] -  _b[1bn._at#1.at_encoded_opinion_abortion] 
	scalar b_1_at_encoded_opinion_abortion =  r(estimate)
	scalar se_1_at_encoded_opinion_abortion = r(se)
	lincom  _b[2._at#2.at_encoded_opinion_abortion] -  _b[1bn._at#2.at_encoded_opinion_abortion] 
	scalar b_2_at_encoded_opinion_abortion =  r(estimate)
	scalar se_2_at_encoded_opinion_abortion = r(se)

	lincom  _b[2._at#0bn.at_encoded_experience] -  _b[1bn._at#0bn.at_encoded_experience] 
	scalar b_0_at_encoded_experience =  r(estimate)
	scalar se_0_at_encoded_experience = r(se)
	lincom  _b[2._at#1.at_encoded_experience] -  _b[1bn._at#1.at_encoded_experience] 
	scalar b_1_at_encoded_experience =  r(estimate)
	scalar se_1_at_encoded_experience = r(se)
	lincom  _b[2._at#2.at_encoded_experience] -  _b[1bn._at#2.at_encoded_experience] 
	scalar b_2_at_encoded_experience =  r(estimate)
	scalar se_2_at_encoded_experience = r(se)
	lincom  _b[2._at#3.at_encoded_experience] -  _b[1bn._at#3.at_encoded_experience] 
	scalar b_3_at_encoded_experience =  r(estimate)
	scalar se_3_at_encoded_experience = r(se)

	lincom  _b[2._at#0bn.at_encoded_gender] -  _b[1bn._at#0bn.at_encoded_gender] 
	scalar b_male =  r(estimate)
	scalar se_male = r(se)
	lincom  _b[2._at#1.at_encoded_gender] -  _b[1bn._at#1.at_encoded_gender] 
	scalar b_female =  r(estimate)
	scalar se_female = r(se)
	
	lincom  _b[2._at#0bn.at_encoded_family] -  _b[1bn._at#0bn.at_encoded_family] 
	scalar b_0_at_encoded_family =  r(estimate)
	scalar se_0_at_encoded_family = r(se)
	lincom  _b[2._at#1.at_encoded_family] -  _b[1bn._at#1.at_encoded_family] 
	scalar b_1_at_encoded_family =  r(estimate)
	scalar se_1_at_encoded_family = r(se)
	lincom  _b[2._at#2.at_encoded_family] -  _b[1bn._at#2.at_encoded_family] 
	scalar b_2_at_encoded_family =  r(estimate)
	scalar se_2_at_encoded_family = r(se)
	lincom  _b[2._at#3.at_encoded_family] -  _b[1bn._at#3.at_encoded_family] 
	scalar b_3_at_encoded_family =  r(estimate)
	scalar se_3_at_encoded_family = r(se)
	lincom  _b[2._at#4.at_encoded_family] -  _b[1bn._at#4.at_encoded_family] 
	scalar b_4_at_encoded_family =  r(estimate)
	scalar se_4_at_encoded_family = r(se)
	
	lincom  _b[2._at#0bn.at_encoded_favorite_music] -  _b[1bn._at#0bn.at_encoded_favorite_music] 
	scalar b_0_at_encoded_favorite_music =  r(estimate)
	scalar se_0_at_encoded_favorite_music = r(se)
	lincom  _b[2._at#1.at_encoded_favorite_music] -  _b[1bn._at#1.at_encoded_favorite_music] 
	scalar b_1_at_encoded_favorite_music =  r(estimate)
	scalar se_1_at_encoded_favorite_music = r(se)
	lincom  _b[2._at#2.at_encoded_favorite_music] -  _b[1bn._at#2.at_encoded_favorite_music] 
	scalar b_2_at_encoded_favorite_music =  r(estimate)
	scalar se_2_at_encoded_favorite_music = r(se)
	lincom  _b[2._at#3.at_encoded_favorite_music] -  _b[1bn._at#3.at_encoded_favorite_music] 
	scalar b_3_at_encoded_favorite_music =  r(estimate)
	scalar se_3_at_encoded_favorite_music = r(se)
	lincom  _b[2._at#4.at_encoded_favorite_music] -  _b[1bn._at#4.at_encoded_favorite_music] 
	scalar b_4_at_encoded_favorite_music =  r(estimate)
	scalar se_4_at_encoded_favorite_music = r(se)
	
	lincom  _b[2._at#0bn.at_encoded_favorite_food] -  _b[1bn._at#0bn.at_encoded_favorite_food] 
	scalar b_0_at_encoded_favorite_food =  r(estimate)
	scalar se_0_at_encoded_favorite_food = r(se)
	lincom  _b[2._at#1.at_encoded_favorite_food] -  _b[1bn._at#1.at_encoded_favorite_food] 
	scalar b_1_at_encoded_favorite_food =  r(estimate)
	scalar se_1_at_encoded_favorite_food = r(se)
	lincom  _b[2._at#2.at_encoded_favorite_food] -  _b[1bn._at#2.at_encoded_favorite_food] 
	scalar b_2_at_encoded_favorite_food =  r(estimate)
	scalar se_2_at_encoded_favorite_food = r(se)
	lincom  _b[2._at#3.at_encoded_favorite_food] -  _b[1bn._at#3.at_encoded_favorite_food] 
	scalar b_3_at_encoded_favorite_food =  r(estimate)
	scalar se_3_at_encoded_favorite_food = r(se)


	post bandwidth ///	
		(b_0_at_encoded_opinion_deficit)  ///
		(se_0_at_encoded_opinion_deficit) ///
		(b_1_at_encoded_opinion_deficit)  ///
		(se_1_at_encoded_opinion_deficit) ///
		(b_2_at_encoded_opinion_deficit)  ///
		(se_2_at_encoded_opinion_deficit) ///		
		(b_3_at_encoded_opinion_deficit)  ///
		(se_3_at_encoded_opinion_deficit) ///		
		(b_0_at_encoded_opinion_IMF) ///
		(se_0_at_encoded_opinion_IMF) ///
		(b_1_at_encoded_opinion_IMF) ///
		(se_1_at_encoded_opinion_IMF) ///
		(b_2_at_encoded_opinion_IMF) ///
		(se_2_at_encoded_opinion_IMF) ///
		(b_3_at_encoded_opinion_IMF) ///
		(se_3_at_encoded_opinion_IMF) ///	
		(b_0_at_encoded_opinion_abortion) ///	
		(se_0_at_encoded_opinion_abortion) ///
		(b_1_at_encoded_opinion_abortion) ///	
		(se_1_at_encoded_opinion_abortion) ///	
		(b_2_at_encoded_opinion_abortion) ///	
		(se_2_at_encoded_opinion_abortion) ///	
		(b_0_at_encoded_experience) ///	
		(se_0_at_encoded_experience) ///
		(b_1_at_encoded_experience) ///	
		(se_1_at_encoded_experience) ///	
		(b_2_at_encoded_experience) ///	
		(se_2_at_encoded_experience) ///	
		(b_3_at_encoded_experience) ///	
		(se_3_at_encoded_experience) ///	
		(b_male)  ///
		(se_male) ///
		(b_female)  ///
		(se_female) ///
		(b_0_at_encoded_family) ///	
		(se_0_at_encoded_family) ///	
		(b_1_at_encoded_family) ///	
		(se_1_at_encoded_family) ///	
		(b_2_at_encoded_family) ///	
		(se_2_at_encoded_family) ///	
		(b_3_at_encoded_family) ///	
		(se_3_at_encoded_family) ///	
		(b_4_at_encoded_family) ///	
		(se_4_at_encoded_family) ///	
		(b_0_at_encoded_favorite_music) ///	
		(se_0_at_encoded_favorite_music) ///	
		(b_1_at_encoded_favorite_music) ///	
		(se_1_at_encoded_favorite_music) ///	
		(b_2_at_encoded_favorite_music) ///	
		(se_2_at_encoded_favorite_music) ///	
		(b_3_at_encoded_favorite_music) ///	
		(se_3_at_encoded_favorite_music) ///	
		(b_4_at_encoded_favorite_music) ///	
		(se_4_at_encoded_favorite_music) ///
		(b_0_at_encoded_favorite_food) ///	
		(se_0_at_encoded_favorite_food) ///	
		(b_1_at_encoded_favorite_food) ///	
		(se_1_at_encoded_favorite_food) ///	
		(b_2_at_encoded_favorite_food) ///	
		(se_2_at_encoded_favorite_food) ///	
		(b_3_at_encoded_favorite_food) ///	
		(se_3_at_encoded_favorite_food) ///	
		(bandwidth_size) ///
		(n_obs) 
}
postclose bandwidth



***
*Create the graphs for the younger group.
***
preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_0_at_encoded_opinion_deficit + 1.96*se_0_at_encoded_opinion_deficit // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_opinion_deficit - 1.96*se_0_at_encoded_opinion_deficit

twoway (line b_0_at_encoded_opinion_deficit bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Position on Deficit", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_0deficit_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_1_at_encoded_opinion_deficit + 1.96*se_1_at_encoded_opinion_deficit // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_opinion_deficit - 1.96*se_1_at_encoded_opinion_deficit

twoway (line b_1_at_encoded_opinion_deficit bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Does Not Want to Reduce Deficit", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_1deficit_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_2_at_encoded_opinion_deficit + 1.96*se_2_at_encoded_opinion_deficit // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_opinion_deficit - 1.96*se_2_at_encoded_opinion_deficit

twoway (line b_2_at_encoded_opinion_deficit bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Reduce Deficit w/ Tax Increases", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_2deficit_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_3_at_encoded_opinion_deficit + 1.96*se_3_at_encoded_opinion_deficit // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_opinion_deficit - 1.96*se_3_at_encoded_opinion_deficit

twoway (line b_3_at_encoded_opinion_deficit bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Reduce Deficit w/ Spending Cuts", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_3deficit_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_0_at_encoded_opinion_IMF + 1.96*se_0_at_encoded_opinion_IMF // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_opinion_IMF - 1.96*se_0_at_encoded_opinion_IMF

twoway (line b_0_at_encoded_opinion_IMF bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Position on IMF Loans", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_0IMF_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_1_at_encoded_opinion_IMF + 1.96*se_1_at_encoded_opinion_IMF // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_opinion_IMF - 1.96*se_1_at_encoded_opinion_IMF

twoway (line b_1_at_encoded_opinion_IMF bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Argentina Should Pay IMF Loans in Full", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_1IMF_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_2_at_encoded_opinion_IMF + 1.96*se_2_at_encoded_opinion_IMF // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_opinion_IMF - 1.96*se_2_at_encoded_opinion_IMF

twoway (line b_2_at_encoded_opinion_IMF bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Argentina Should Renegotiate IMF Loans", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_2IMF_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_3_at_encoded_opinion_IMF + 1.96*se_3_at_encoded_opinion_IMF // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_opinion_IMF - 1.96*se_3_at_encoded_opinion_IMF

twoway (line b_3_at_encoded_opinion_IMF bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Argentina Should Not Pay IMF Loans", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_3IMF_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_0_at_encoded_opinion_abortion + 1.96*se_0_at_encoded_opinion_abortion // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_opinion_abortion - 1.96*se_0_at_encoded_opinion_abortion

twoway (line b_0_at_encoded_opinion_abortion bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Position on Abortion", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_0abortion_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_1_at_encoded_opinion_abortion + 1.96*se_1_at_encoded_opinion_abortion // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_opinion_abortion - 1.96*se_1_at_encoded_opinion_abortion

twoway (line b_1_at_encoded_opinion_abortion bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Abortion Should be Illegal", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_1abortion_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_2_at_encoded_opinion_abortion + 1.96*se_2_at_encoded_opinion_abortion // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_opinion_abortion - 1.96*se_2_at_encoded_opinion_abortion

twoway (line b_2_at_encoded_opinion_abortion bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Abortion Should be Legal", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_2abortion_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_0_at_encoded_experience + 1.96*se_0_at_encoded_experience // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_experience - 1.96*se_0_at_encoded_experience

twoway (line b_0_at_encoded_experience bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Experience in Office", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_0experience_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_1_at_encoded_experience + 1.96*se_1_at_encoded_experience // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_experience - 1.96*se_1_at_encoded_experience

twoway (line b_1_at_encoded_experience bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: 5 Years of Experience", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_1experience_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_2_at_encoded_experience + 1.96*se_2_at_encoded_experience // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_experience - 1.96*se_2_at_encoded_experience

twoway (line b_2_at_encoded_experience bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: 10 Years of Experience", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_2experience_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_3_at_encoded_experience + 1.96*se_3_at_encoded_experience // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_experience - 1.96*se_3_at_encoded_experience

twoway (line b_3_at_encoded_experience bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: 15 Years of Experience", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_3experience_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_female + 1.96*se_female // Calculate 95% confidence intervals
gen b_low =   b_female - 1.96*se_female

twoway (line b_female bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Female", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_female_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_male + 1.96*se_male // Calculate 95% confidence intervals
gen b_low =   b_male - 1.96*se_male

twoway (line b_male bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Male", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_male_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_0_at_encoded_family + 1.96*se_0_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_family - 1.96*se_0_at_encoded_family

twoway (line b_0_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Information on Family", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_0family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_1_at_encoded_family + 1.96*se_1_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_family - 1.96*se_1_at_encoded_family

twoway (line b_1_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Married (Two Children)", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_1family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_2_at_encoded_family + 1.96*se_2_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_family - 1.96*se_2_at_encoded_family

twoway (line b_2_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Married (No Children)", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_2family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_3_at_encoded_family + 1.96*se_3_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_family - 1.96*se_3_at_encoded_family

twoway (line b_3_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Single (Divorced)", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_3family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_4_at_encoded_family + 1.96*se_4_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_4_at_encoded_family - 1.96*se_4_at_encoded_family

twoway (line b_4_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Single (Never Married)", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_4family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_0_at_encoded_favorite_music + 1.96*se_0_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_favorite_music - 1.96*se_0_at_encoded_favorite_music

twoway (line b_0_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Favorite Type of Music", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_0music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_1_at_encoded_favorite_music + 1.96*se_1_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_favorite_music - 1.96*se_1_at_encoded_favorite_music

twoway (line b_1_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Music is Jazz", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_1music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_2_at_encoded_favorite_music + 1.96*se_2_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_favorite_music - 1.96*se_2_at_encoded_favorite_music

twoway (line b_2_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Music is Pop", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_2music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_3_at_encoded_favorite_music + 1.96*se_3_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_favorite_music - 1.96*se_3_at_encoded_favorite_music

twoway (line b_3_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Music is Rock", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_3music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_4_at_encoded_favorite_music + 1.96*se_4_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_4_at_encoded_favorite_music - 1.96*se_4_at_encoded_favorite_music

twoway (line b_4_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Music is Tango", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_4music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_0_at_encoded_favorite_food + 1.96*se_0_at_encoded_favorite_food // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_favorite_food - 1.96*se_0_at_encoded_favorite_food

twoway (line b_0_at_encoded_favorite_food bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Favorite Type of Food", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_0food_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_1_at_encoded_favorite_food + 1.96*se_1_at_encoded_favorite_food // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_favorite_food - 1.96*se_1_at_encoded_favorite_food

twoway (line b_1_at_encoded_favorite_food bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Food is Asado", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_1food_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_2_at_encoded_favorite_food + 1.96*se_2_at_encoded_favorite_food // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_favorite_food - 1.96*se_2_at_encoded_favorite_food

twoway (line b_2_at_encoded_favorite_food bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Food is Empanadas", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_2food_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age18.dta", clear
gen b_high =  b_3_at_encoded_favorite_food + 1.96*se_3_at_encoded_favorite_food // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_favorite_food - 1.96*se_3_at_encoded_favorite_food

twoway (line b_3_at_encoded_favorite_food bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(175)730, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 625 1250, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Food is Provoleta", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_18, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_18_3food_bandwidth_MM, replace)

restore



***
*Combine the graphs for the younger group.
***

*Figure SI6
graph 	combine	///
			cj_18_0deficit_bandwidth_MM cj_18_1deficit_bandwidth_MM cj_18_2deficit_bandwidth_MM cj_18_3deficit_bandwidth_MM 	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Position on Deficit", size(medsmall)) 

*Figure SI7
graph 	combine	///
			cj_18_0IMF_bandwidth_MM cj_18_1IMF_bandwidth_MM cj_18_2IMF_bandwidth_MM cj_18_3IMF_bandwidth_MM 	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Position on IMF Loans", size(medsmall)) 
				
*Figure SI8
graph 	combine	///
			cj_18_0abortion_bandwidth_MM cj_18_1abortion_bandwidth_MM cj_18_2abortion_bandwidth_MM  	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Position on Abortion", size(medsmall)) 

*Figure SI9
graph 	combine	///
			cj_18_0experience_bandwidth_MM cj_18_1experience_bandwidth_MM cj_18_2experience_bandwidth_MM cj_18_3experience_bandwidth_MM 	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Experience in Office", size(medium)) 
	
*Figure SI10
graph 	combine	///
			cj_18_female_bandwidth_MM cj_18_male_bandwidth_MM 	///
			, 	rows(1) graphregion(margin(vsmall)) scheme(s1mono)  scale(1.4) ysize(2.6) ///			
				title("Attribute: Gender", size(medium)) 
				
*Figure SI11
graph 	combine	///
			cj_18_0family_bandwidth_MM cj_18_1family_bandwidth_MM cj_18_2family_bandwidth_MM cj_18_3family_bandwidth_MM cj_18_4family_bandwidth_MM	///
			, 	rows(3) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(7.5) ///
				title("Attribute: Family", size(medium)) 

*Figure SI12
graph 	combine	///
			cj_18_0music_bandwidth_MM cj_18_1music_bandwidth_MM cj_18_2music_bandwidth_MM cj_18_3music_bandwidth_MM cj_18_4music_bandwidth_MM	///
			, 	rows(3) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(7.5) ///
				title("Attribute: Favorite Music", size(medium))

*Figure SI13
graph 	combine	///
			cj_18_0food_bandwidth_MM cj_18_1food_bandwidth_MM cj_18_2food_bandwidth_MM cj_18_3food_bandwidth_MM 	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Favorite Food", size(medium))

				
				
	
**************
**************
*Figures SI14-SI21
**************
**************

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_Conjoint_CPS.dta", clear

***
*Get the regression discontinuity optimal bandwidth for the older group. 
***
rdbwselect vote_choice_conjoint  days_over_70_election if days_over_70_election>=(-1095) & days_over_70_election<=(1095), c(0) p(1) kernel(uniform) all //*only allowing in observations within two years of age above and below 70
global h_CCT_vote_choice_conjoint_70 = e(h_CCT) 


***
*Create a new file to store the differences in marginal means and associated standard errors over different bandwidths.
***
postfile bandwidth ///
		b_0_at_encoded_opinion_deficit  ///
		se_0_at_encoded_opinion_deficit ///
		b_1_at_encoded_opinion_deficit  ///
		se_1_at_encoded_opinion_deficit ///
		b_2_at_encoded_opinion_deficit  ///
		se_2_at_encoded_opinion_deficit ///		
		b_3_at_encoded_opinion_deficit  ///
		se_3_at_encoded_opinion_deficit ///		
		b_0_at_encoded_opinion_IMF ///
		se_0_at_encoded_opinion_IMF ///
		b_1_at_encoded_opinion_IMF ///
		se_1_at_encoded_opinion_IMF ///
		b_2_at_encoded_opinion_IMF ///
		se_2_at_encoded_opinion_IMF ///
		b_3_at_encoded_opinion_IMF ///
		se_3_at_encoded_opinion_IMF ///	
		b_0_at_encoded_opinion_abortion ///	
		se_0_at_encoded_opinion_abortion ///
		b_1_at_encoded_opinion_abortion ///	
		se_1_at_encoded_opinion_abortion ///	
		b_2_at_encoded_opinion_abortion ///	
		se_2_at_encoded_opinion_abortion ///	
		b_0_at_encoded_experience ///	
		se_0_at_encoded_experience ///
		b_1_at_encoded_experience ///	
		se_1_at_encoded_experience ///	
		b_2_at_encoded_experience ///	
		se_2_at_encoded_experience ///	
		b_3_at_encoded_experience ///	
		se_3_at_encoded_experience ///	
		b_male  ///
		se_male ///
		b_female  ///
		se_female ///
		b_0_at_encoded_family ///	
		se_0_at_encoded_family ///	
		b_1_at_encoded_family ///	
		se_1_at_encoded_family ///	
		b_2_at_encoded_family ///	
		se_2_at_encoded_family ///	
		b_3_at_encoded_family ///	
		se_3_at_encoded_family ///	
		b_4_at_encoded_family ///	
		se_4_at_encoded_family ///	
		b_0_at_encoded_favorite_music ///	
		se_0_at_encoded_favorite_music ///	
		b_1_at_encoded_favorite_music ///	
		se_1_at_encoded_favorite_music ///	
		b_2_at_encoded_favorite_music ///	
		se_2_at_encoded_favorite_music ///	
		b_3_at_encoded_favorite_music ///	
		se_3_at_encoded_favorite_music ///	
		b_4_at_encoded_favorite_music ///	
		se_4_at_encoded_favorite_music ///
		b_0_at_encoded_favorite_food ///	
		se_0_at_encoded_favorite_food ///	
		b_1_at_encoded_favorite_food ///	
		se_1_at_encoded_favorite_food ///	
		b_2_at_encoded_favorite_food ///	
		se_2_at_encoded_favorite_food ///	
		b_3_at_encoded_favorite_food ///	
		se_3_at_encoded_favorite_food ///	
		bandwidth_size ///
		n_obs ///
using "bandwidth_age70.dta", replace


***
*Estimate the RD model over different bandwidths for the older group and record differences in marginal means.
***

forvalues days_counter = 30(5)1095 {	
	reg vote_choice_conjoint  i.age_70_or_over_election##i.at_encoded_*##c.days_over_70_election if  abs(days_over_70_election) <= `days_counter' , cl(respondent)  
	scalar bandwidth_size = `days_counter'
	scalar n_obs = e(N_clust) 
	
	margins at_encoded_*,  at(days_over_70_election = (0) age_70_or_over_election = (0 1)) post  base coefleg
	
	lincom _b[1bn._at#0bn.at_encoded_opinion_deficit]   -   _b[2._at#0bn.at_encoded_opinion_deficit]        
	scalar b_0_at_encoded_opinion_deficit =  r(estimate)
	scalar se_0_at_encoded_opinion_deficit = r(se)
	lincom _b[1bn._at#1.at_encoded_opinion_deficit]   -   _b[2._at#1.at_encoded_opinion_deficit]        
	scalar b_1_at_encoded_opinion_deficit =  r(estimate)
	scalar se_1_at_encoded_opinion_deficit = r(se)
	lincom _b[1bn._at#2.at_encoded_opinion_deficit]   -   _b[2._at#2.at_encoded_opinion_deficit]        
	scalar b_2_at_encoded_opinion_deficit =  r(estimate)
	scalar se_2_at_encoded_opinion_deficit = r(se)
	lincom _b[1bn._at#3.at_encoded_opinion_deficit]    -   _b[2._at#3.at_encoded_opinion_deficit]       
	scalar b_3_at_encoded_opinion_deficit =  r(estimate)
	scalar se_3_at_encoded_opinion_deficit = r(se)

	lincom _b[1bn._at#0bn.at_encoded_opinion_IMF]   -   _b[2._at#0bn.at_encoded_opinion_IMF]        
	scalar b_0_at_encoded_opinion_IMF =  r(estimate)
	scalar se_0_at_encoded_opinion_IMF = r(se)
	lincom _b[1bn._at#1.at_encoded_opinion_IMF]   -   _b[2._at#1.at_encoded_opinion_IMF]        
	scalar b_1_at_encoded_opinion_IMF =  r(estimate)
	scalar se_1_at_encoded_opinion_IMF = r(se)
	lincom _b[1bn._at#2.at_encoded_opinion_IMF]   -   _b[2._at#2.at_encoded_opinion_IMF]        
	scalar b_2_at_encoded_opinion_IMF =  r(estimate)
	scalar se_2_at_encoded_opinion_IMF = r(se)
	lincom _b[1bn._at#3.at_encoded_opinion_IMF]    -   _b[2._at#3.at_encoded_opinion_IMF]       
	scalar b_3_at_encoded_opinion_IMF =  r(estimate)
	scalar se_3_at_encoded_opinion_IMF = r(se)
	
	lincom _b[1bn._at#0bn.at_encoded_opinion_abortion]    -   _b[2._at#0bn.at_encoded_opinion_abortion]       
	scalar b_0_at_encoded_opinion_abortion =  r(estimate)
	scalar se_0_at_encoded_opinion_abortion = r(se)
	lincom _b[1bn._at#1.at_encoded_opinion_abortion]   -   _b[2._at#1.at_encoded_opinion_abortion]        
	scalar b_1_at_encoded_opinion_abortion =  r(estimate)
	scalar se_1_at_encoded_opinion_abortion = r(se)
	lincom _b[1bn._at#2.at_encoded_opinion_abortion]    -   _b[2._at#2.at_encoded_opinion_abortion]       
	scalar b_2_at_encoded_opinion_abortion =  r(estimate)
	scalar se_2_at_encoded_opinion_abortion = r(se)

	lincom _b[1bn._at#0bn.at_encoded_experience]   -   _b[2._at#0bn.at_encoded_experience]        
	scalar b_0_at_encoded_experience =  r(estimate)
	scalar se_0_at_encoded_experience = r(se)
	lincom _b[1bn._at#1.at_encoded_experience]    -   _b[2._at#1.at_encoded_experience]       
	scalar b_1_at_encoded_experience =  r(estimate)
	scalar se_1_at_encoded_experience = r(se)
	lincom _b[1bn._at#2.at_encoded_experience]    -   _b[2._at#2.at_encoded_experience]       
	scalar b_2_at_encoded_experience =  r(estimate)
	scalar se_2_at_encoded_experience = r(se)
	lincom _b[1bn._at#3.at_encoded_experience]    -   _b[2._at#3.at_encoded_experience]       
	scalar b_3_at_encoded_experience =  r(estimate)
	scalar se_3_at_encoded_experience = r(se)

	lincom _b[1bn._at#0bn.at_encoded_gender]   -   _b[2._at#0bn.at_encoded_gender]        
	scalar b_male =  r(estimate)
	scalar se_male = r(se)
	lincom _b[1bn._at#1.at_encoded_gender]   -   _b[2._at#1.at_encoded_gender]        
	scalar b_female =  r(estimate)
	scalar se_female = r(se)
	
	lincom  _b[1bn._at#0bn.at_encoded_family]    -   _b[2._at#0bn.at_encoded_family]      
	scalar b_0_at_encoded_family =  r(estimate)
	scalar se_0_at_encoded_family = r(se)
	lincom _b[1bn._at#1.at_encoded_family]   -   _b[2._at#1.at_encoded_family]        
	scalar b_1_at_encoded_family =  r(estimate)
	scalar se_1_at_encoded_family = r(se)
	lincom _b[1bn._at#2.at_encoded_family]    -   _b[2._at#2.at_encoded_family]       
	scalar b_2_at_encoded_family =  r(estimate)
	scalar se_2_at_encoded_family = r(se)
	lincom _b[1bn._at#3.at_encoded_family]    -   _b[2._at#3.at_encoded_family]       
	scalar b_3_at_encoded_family =  r(estimate)
	scalar se_3_at_encoded_family = r(se)
	lincom _b[1bn._at#4.at_encoded_family]   -   _b[2._at#4.at_encoded_family]        
	scalar b_4_at_encoded_family =  r(estimate)
	scalar se_4_at_encoded_family = r(se)
	
	lincom  _b[1bn._at#0bn.at_encoded_favorite_music]   -   _b[2._at#0bn.at_encoded_favorite_music]       
	scalar b_0_at_encoded_favorite_music =  r(estimate)
	scalar se_0_at_encoded_favorite_music = r(se)
	lincom _b[1bn._at#1.at_encoded_favorite_music]    -   _b[2._at#1.at_encoded_favorite_music]       
	scalar b_1_at_encoded_favorite_music =  r(estimate)
	scalar se_1_at_encoded_favorite_music = r(se)
	lincom _b[1bn._at#2.at_encoded_favorite_music]    -   _b[2._at#2.at_encoded_favorite_music]       
	scalar b_2_at_encoded_favorite_music =  r(estimate)
	scalar se_2_at_encoded_favorite_music = r(se)
	lincom _b[1bn._at#3.at_encoded_favorite_music]    -   _b[2._at#3.at_encoded_favorite_music]       
	scalar b_3_at_encoded_favorite_music =  r(estimate)
	scalar se_3_at_encoded_favorite_music = r(se)
	lincom  _b[1bn._at#4.at_encoded_favorite_music]   -   _b[2._at#4.at_encoded_favorite_music]       
	scalar b_4_at_encoded_favorite_music =  r(estimate)
	scalar se_4_at_encoded_favorite_music = r(se)
	
	lincom  _b[1bn._at#0bn.at_encoded_favorite_food]    -   _b[2._at#0bn.at_encoded_favorite_food]      
	scalar b_0_at_encoded_favorite_food =  r(estimate)
	scalar se_0_at_encoded_favorite_food = r(se)
	lincom  _b[1bn._at#1.at_encoded_favorite_food]    -   _b[2._at#1.at_encoded_favorite_food]      
	scalar b_1_at_encoded_favorite_food =  r(estimate)
	scalar se_1_at_encoded_favorite_food = r(se)
	lincom  _b[1bn._at#2.at_encoded_favorite_food]    -   _b[2._at#2.at_encoded_favorite_food]      
	scalar b_2_at_encoded_favorite_food =  r(estimate)
	scalar se_2_at_encoded_favorite_food = r(se)
	lincom  _b[1bn._at#3.at_encoded_favorite_food]   -   _b[2._at#3.at_encoded_favorite_food]       
	scalar b_3_at_encoded_favorite_food =  r(estimate)
	scalar se_3_at_encoded_favorite_food = r(se)


	post bandwidth ///	
		(b_0_at_encoded_opinion_deficit)  ///
		(se_0_at_encoded_opinion_deficit) ///
		(b_1_at_encoded_opinion_deficit)  ///
		(se_1_at_encoded_opinion_deficit) ///
		(b_2_at_encoded_opinion_deficit)  ///
		(se_2_at_encoded_opinion_deficit) ///		
		(b_3_at_encoded_opinion_deficit)  ///
		(se_3_at_encoded_opinion_deficit) ///		
		(b_0_at_encoded_opinion_IMF) ///
		(se_0_at_encoded_opinion_IMF) ///
		(b_1_at_encoded_opinion_IMF) ///
		(se_1_at_encoded_opinion_IMF) ///
		(b_2_at_encoded_opinion_IMF) ///
		(se_2_at_encoded_opinion_IMF) ///
		(b_3_at_encoded_opinion_IMF) ///
		(se_3_at_encoded_opinion_IMF) ///	
		(b_0_at_encoded_opinion_abortion) ///	
		(se_0_at_encoded_opinion_abortion) ///
		(b_1_at_encoded_opinion_abortion) ///	
		(se_1_at_encoded_opinion_abortion) ///	
		(b_2_at_encoded_opinion_abortion) ///	
		(se_2_at_encoded_opinion_abortion) ///	
		(b_0_at_encoded_experience) ///	
		(se_0_at_encoded_experience) ///
		(b_1_at_encoded_experience) ///	
		(se_1_at_encoded_experience) ///	
		(b_2_at_encoded_experience) ///	
		(se_2_at_encoded_experience) ///	
		(b_3_at_encoded_experience) ///	
		(se_3_at_encoded_experience) ///	
		(b_male)  ///
		(se_male) ///
		(b_female)  ///
		(se_female) ///
		(b_0_at_encoded_family) ///	
		(se_0_at_encoded_family) ///	
		(b_1_at_encoded_family) ///	
		(se_1_at_encoded_family) ///	
		(b_2_at_encoded_family) ///	
		(se_2_at_encoded_family) ///	
		(b_3_at_encoded_family) ///	
		(se_3_at_encoded_family) ///	
		(b_4_at_encoded_family) ///	
		(se_4_at_encoded_family) ///	
		(b_0_at_encoded_favorite_music) ///	
		(se_0_at_encoded_favorite_music) ///	
		(b_1_at_encoded_favorite_music) ///	
		(se_1_at_encoded_favorite_music) ///	
		(b_2_at_encoded_favorite_music) ///	
		(se_2_at_encoded_favorite_music) ///	
		(b_3_at_encoded_favorite_music) ///	
		(se_3_at_encoded_favorite_music) ///	
		(b_4_at_encoded_favorite_music) ///	
		(se_4_at_encoded_favorite_music) ///
		(b_0_at_encoded_favorite_food) ///	
		(se_0_at_encoded_favorite_food) ///	
		(b_1_at_encoded_favorite_food) ///	
		(se_1_at_encoded_favorite_food) ///	
		(b_2_at_encoded_favorite_food) ///	
		(se_2_at_encoded_favorite_food) ///	
		(b_3_at_encoded_favorite_food) ///	
		(se_3_at_encoded_favorite_food) ///	
		(bandwidth_size) ///
		(n_obs) 
}
postclose bandwidth



***
*Create the graphs for the older group.
***
preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_0_at_encoded_opinion_deficit + 1.96*se_0_at_encoded_opinion_deficit // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_opinion_deficit - 1.96*se_0_at_encoded_opinion_deficit

twoway (line b_0_at_encoded_opinion_deficit bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///	title("Value: No Position on Deficit", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_0deficit_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_1_at_encoded_opinion_deficit + 1.96*se_1_at_encoded_opinion_deficit // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_opinion_deficit - 1.96*se_1_at_encoded_opinion_deficit

twoway (line b_1_at_encoded_opinion_deficit bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///	title("Value: Does Not Want to Reduce Deficit", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_1deficit_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_2_at_encoded_opinion_deficit + 1.96*se_2_at_encoded_opinion_deficit // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_opinion_deficit - 1.96*se_2_at_encoded_opinion_deficit

twoway (line b_2_at_encoded_opinion_deficit bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///	title("Value: Reduce Deficit w/ Tax Increases", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_2deficit_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_3_at_encoded_opinion_deficit + 1.96*se_3_at_encoded_opinion_deficit // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_opinion_deficit - 1.96*se_3_at_encoded_opinion_deficit

twoway (line b_3_at_encoded_opinion_deficit bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///	title("Value: Reduce Deficit w/ Spending Cuts", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_3deficit_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_0_at_encoded_opinion_IMF + 1.96*se_0_at_encoded_opinion_IMF // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_opinion_IMF - 1.96*se_0_at_encoded_opinion_IMF

twoway (line b_0_at_encoded_opinion_IMF bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///	title("Value: No Position on IMF Loans", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_0IMF_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_1_at_encoded_opinion_IMF + 1.96*se_1_at_encoded_opinion_IMF // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_opinion_IMF - 1.96*se_1_at_encoded_opinion_IMF

twoway (line b_1_at_encoded_opinion_IMF bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///	title("Value: Argentina Should Pay IMF Loans in Full", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_1IMF_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_2_at_encoded_opinion_IMF + 1.96*se_2_at_encoded_opinion_IMF // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_opinion_IMF - 1.96*se_2_at_encoded_opinion_IMF

twoway (line b_2_at_encoded_opinion_IMF bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///	title("Value: Argentina Should Renegotiate IMF Loans", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_2IMF_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_3_at_encoded_opinion_IMF + 1.96*se_3_at_encoded_opinion_IMF // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_opinion_IMF - 1.96*se_3_at_encoded_opinion_IMF

twoway (line b_3_at_encoded_opinion_IMF bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Argentina Should Not Pay IMF Loans", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_3IMF_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_0_at_encoded_opinion_abortion + 1.96*se_0_at_encoded_opinion_abortion // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_opinion_abortion - 1.96*se_0_at_encoded_opinion_abortion

twoway (line b_0_at_encoded_opinion_abortion bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Position on Abortion", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_0abortion_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_1_at_encoded_opinion_abortion + 1.96*se_1_at_encoded_opinion_abortion // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_opinion_abortion - 1.96*se_1_at_encoded_opinion_abortion

twoway (line b_1_at_encoded_opinion_abortion bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Abortion Should be Illegal", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_1abortion_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_2_at_encoded_opinion_abortion + 1.96*se_2_at_encoded_opinion_abortion // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_opinion_abortion - 1.96*se_2_at_encoded_opinion_abortion

twoway (line b_2_at_encoded_opinion_abortion bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Abortion Should be Legal", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_2abortion_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_0_at_encoded_experience + 1.96*se_0_at_encoded_experience // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_experience - 1.96*se_0_at_encoded_experience

twoway (line b_0_at_encoded_experience bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Experience in Office", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_0experience_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_1_at_encoded_experience + 1.96*se_1_at_encoded_experience // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_experience - 1.96*se_1_at_encoded_experience

twoway (line b_1_at_encoded_experience bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: 5 Years of Experience", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_1experience_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_2_at_encoded_experience + 1.96*se_2_at_encoded_experience // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_experience - 1.96*se_2_at_encoded_experience

twoway (line b_2_at_encoded_experience bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: 10 Years of Experience", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_2experience_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_3_at_encoded_experience + 1.96*se_3_at_encoded_experience // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_experience - 1.96*se_3_at_encoded_experience

twoway (line b_3_at_encoded_experience bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: 15 Years of Experience", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_3experience_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_female + 1.96*se_female // Calculate 95% confidence intervals
gen b_low =   b_female - 1.96*se_female

twoway (line b_female bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Female", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_female_bandwidth_MM, replace)

restore


preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_male + 1.96*se_male // Calculate 95% confidence intervals
gen b_low =   b_male - 1.96*se_male

twoway (line b_male bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Male", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_male_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_0_at_encoded_family + 1.96*se_0_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_family - 1.96*se_0_at_encoded_family

twoway (line b_0_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Information on Family", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_0family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_1_at_encoded_family + 1.96*se_1_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_family - 1.96*se_1_at_encoded_family

twoway (line b_1_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Married (Two Children)", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_1family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_2_at_encoded_family + 1.96*se_2_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_family - 1.96*se_2_at_encoded_family

twoway (line b_2_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Married (No Children)", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_2family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_3_at_encoded_family + 1.96*se_3_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_family - 1.96*se_3_at_encoded_family

twoway (line b_3_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Single (Divorced)", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_3family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_4_at_encoded_family + 1.96*se_4_at_encoded_family // Calculate 95% confidence intervals
gen b_low =   b_4_at_encoded_family - 1.96*se_4_at_encoded_family

twoway (line b_4_at_encoded_family bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Single (Never Married)", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_4family_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_0_at_encoded_favorite_music + 1.96*se_0_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_favorite_music - 1.96*se_0_at_encoded_favorite_music

twoway (line b_0_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Favorite Type of Music", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_0music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_1_at_encoded_favorite_music + 1.96*se_1_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_favorite_music - 1.96*se_1_at_encoded_favorite_music

twoway (line b_1_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Music is Jazz", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_1music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_2_at_encoded_favorite_music + 1.96*se_2_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_favorite_music - 1.96*se_2_at_encoded_favorite_music

twoway (line b_2_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Music is Pop", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_2music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_3_at_encoded_favorite_music + 1.96*se_3_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_favorite_music - 1.96*se_3_at_encoded_favorite_music

twoway (line b_3_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Music is Rock", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_3music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_4_at_encoded_favorite_music + 1.96*se_4_at_encoded_favorite_music // Calculate 95% confidence intervals
gen b_low =   b_4_at_encoded_favorite_music - 1.96*se_4_at_encoded_favorite_music

twoway (line b_4_at_encoded_favorite_music bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Music is Tango", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_4music_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_0_at_encoded_favorite_food + 1.96*se_0_at_encoded_favorite_food // Calculate 95% confidence intervals
gen b_low =   b_0_at_encoded_favorite_food - 1.96*se_0_at_encoded_favorite_food

twoway (line b_0_at_encoded_favorite_food bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: No Favorite Type of Food", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_0food_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_1_at_encoded_favorite_food + 1.96*se_1_at_encoded_favorite_food // Calculate 95% confidence intervals
gen b_low =   b_1_at_encoded_favorite_food - 1.96*se_1_at_encoded_favorite_food

twoway (line b_1_at_encoded_favorite_food bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Food is Asado", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_1food_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_2_at_encoded_favorite_food + 1.96*se_2_at_encoded_favorite_food // Calculate 95% confidence intervals
gen b_low =   b_2_at_encoded_favorite_food - 1.96*se_2_at_encoded_favorite_food

twoway (line b_2_at_encoded_favorite_food bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Food is Empanadas", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_2food_bandwidth_MM, replace)

restore



preserve

use "bandwidth_age70.dta", clear
gen b_high =  b_3_at_encoded_favorite_food + 1.96*se_3_at_encoded_favorite_food // Calculate 95% confidence intervals
gen b_low =   b_3_at_encoded_favorite_food - 1.96*se_3_at_encoded_favorite_food

twoway (line b_3_at_encoded_favorite_food bandwidth_size, lcolor(black)) ///
	(line b_high bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(line b_low bandwidth_size, lpattern(solid) lcolor(gs11) lwidth(thin)) ///
	(spike n_obs bandwidth_size, yaxis(2) lwidth(thin)), ///
	xlabel(30(355)1095, labsize(small))  legend(off)  ///
	ylabel(-2.5(1.25)2.5, labsize(small) format(%9.2f)) ///
	yscale(range(0 5000) axis(2)) ylabel(0 800, labsize(small) axis(2)) yline(0, lcolor(gs1) lpattern(dash)) ytitle("Number of Respondents                                                                                         ", size(vsmall) axis(2)) ///
	xtitle("Bandwidth in Days", size(small)) ytitle("Difference in Marginal Mean" "(Compelled - Voluntary)", size(small)) graphregion(color(white)) ///
	title("Value: Favorite Food is Provoleta", size(medsmall)) ///
	scheme(s1mono) ysize(5) xline($h_CCT_vote_choice_conjoint_70, lcolor(red) lpattern(solid)) 	///
	graphregion(margin(small)) ///
	name(cj_70_3food_bandwidth_MM, replace)

restore



***
*Combine the graphs for the older group.
***

*Figure SI14
graph 	combine	///
			cj_70_0deficit_bandwidth_MM cj_70_1deficit_bandwidth_MM cj_70_2deficit_bandwidth_MM cj_70_3deficit_bandwidth_MM 	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Position on Deficit", size(medsmall)) 

*Figure SI15
graph 	combine	///
			cj_70_0IMF_bandwidth_MM cj_70_1IMF_bandwidth_MM cj_70_2IMF_bandwidth_MM cj_70_3IMF_bandwidth_MM 	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Position on IMF Loans", size(medsmall)) 
				
*Figure SI16
graph 	combine	///
			cj_70_0abortion_bandwidth_MM cj_70_1abortion_bandwidth_MM cj_70_2abortion_bandwidth_MM  	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Position on Abortion", size(medsmall)) 

*Figure SI17
graph 	combine	///
			cj_70_0experience_bandwidth_MM cj_70_1experience_bandwidth_MM cj_70_2experience_bandwidth_MM cj_70_3experience_bandwidth_MM 	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Experience in Office", size(medium)) 
	
*Figure SI18
graph 	combine	///
			cj_70_female_bandwidth_MM cj_70_male_bandwidth_MM 	///
			, 	rows(1) graphregion(margin(vsmall)) scheme(s1mono)  scale(1.4) ysize(2.6) ///			
				title("Attribute: Gender", size(medium)) 
				
*Figure SI19
graph 	combine	///
			cj_70_0family_bandwidth_MM cj_70_1family_bandwidth_MM cj_70_2family_bandwidth_MM cj_70_3family_bandwidth_MM cj_70_4family_bandwidth_MM	///
			, 	rows(3) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(7.5) ///
				title("Attribute: Family", size(medium)) 

*Figure SI20
graph 	combine	///
			cj_70_0music_bandwidth_MM cj_70_1music_bandwidth_MM cj_70_2music_bandwidth_MM cj_70_3music_bandwidth_MM cj_70_4music_bandwidth_MM	///
			, 	rows(3) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(7.5) ///
				title("Attribute: Favorite Music", size(medium))

*Figure SI21
graph 	combine	///
			cj_70_0food_bandwidth_MM cj_70_1food_bandwidth_MM cj_70_2food_bandwidth_MM cj_70_3food_bandwidth_MM 	///
			, 	rows(2) graphregion(margin(vsmall)) scheme(s1mono)  scale(.7) ysize(5) ///
				title("Attribute: Favorite Food", size(medium))


	
**************
**************
*Figure SI22
**************
**************

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_Conjoint_CPS.dta", clear

		
***
*Reorder the attribute variables for graphing purposes. 
***				
order at_encoded_opinion_deficit at_encoded_opinion_IMF  at_encoded_opinion_abortion at_encoded_experience at_encoded_gender at_encoded_family  at_encoded_favorite_music at_encoded_favorite_food, last 



***
*Calculate the AMCEs for those near the age 18 cutoff and plot them.
***	
reg vote_choice_conjoint  i.age_18_or_over_election##i.at_encoded*##c.days_over_18_election##c.days_over_18_election if days_over_18_election>=(-730) & days_over_70_election<=(730), cl(respondent) baselevels
estimates store conjoint_18_thresh_quad

estimates restore conjoint_18_thresh_quad
margins, dydx(at_encoded*) at(days_over_18_election = (0) age_18_or_over_election = (0)) post  base level(95)
estimates store below_18_thresh_quad_AMCE
 
estimates restore conjoint_18_thresh_quad
margins, dydx(at_encoded*) at(days_over_18_election = (0) age_18_or_over_election = (1)) post  base level(95)
estimates store above_18_thresh_quad_AMCE


coefplot 	(below_18_thresh_quad_AMCE, recast(scatter) mcolor(gs8) lpattern(solid) lwidth(medium) ciopts(recast(rspike) lwidth(thin) lcolor(gs8*.55))) /// 			
			(above_18_thresh_quad_AMCE, recast(scatter) mcolor(black) lpattern(solid) lwidth(medium) ciopts(recast(rspike) lwidth(thin) lcolor(black*.55))) /// 
			, 	omitted baselevels ///
				level(95) horizontal format(%9.1f) ///
				xline(0, lcolor(red) lwidth(medium) lpattern(solid)) xtitle("Estimated AMCE", size(medium)) 	///
				ytitle("", size(medium)) ylabel( , labsize(small))		///
				legend(on order(2 "Just Under 18 (Voluntary Voting)" 4 "Just Over 18 (Compulsory Voting)") size(small) rows(2)) title("") graphregion(color(white)) ///
				scheme(s1color) xsize(12) ysize(17) scale(.7) 	///
				xlabel(-0.4(0.1)0.4) xscale(range(-0.4 .4)) ///
				graphregion(color(white) margin(tiny)) ///
					coeflabels( 								///
					0.at_encoded_family  = 				"{bf:Baseline: No Information on Family}"   	///
					0.at_encoded_gender  = 				"{bf:Baseline: Male}"   	///
					0.at_encoded_favorite_music  =  	"{bf:Baseline: No Favorite Type of Music}"   	///
					0.at_encoded_favorite_food =  		"{bf:Baseline: No Favorite Type of Food}"   	///
					0.at_encoded_experience = 	 		"{bf:Baseline: No Experience in Office}"   	///
					0.at_encoded_opinion_abortion = 	"{bf:Baseline: No Position on Abortion}"   	///
					0.at_encoded_opinion_deficit  = 	"{bf:Baseline: No Position on Deficit}" 		/// 
					0.at_encoded_opinion_IMF  = 	 	"{bf:Baseline: No Position on IMF Loans}"   	///
					) ///
				graphregion(margin(small)) ///
				yline(4.5 8.5 11.5 15.5 17.5 22.5 27.5, lcolor(black) lwidth(medthick)) ///
				grid(nogextend) name(conjoint_18_thresh_quad_AMCE, replace)
					

***
*Calculate the marginal means for those near the age 18 cutoff and plot them.
***	
reg vote_choice_conjoint  i.age_18_or_over_election##i.at_encoded*##c.days_over_18_election##c.days_over_18_election if days_over_18_election>=(-730) & days_over_70_election<=(730), cl(respondent) baselevels
estimates store conjoint_18_thresh_quad

estimates restore conjoint_18_thresh_quad
margins at_encoded*,  at(days_over_18_election = (0) age_18_or_over_election = (0)) post  base level(84)
estimates store below_18_thresh_quad_MM
 
estimates restore conjoint_18_thresh_quad
margins at_encoded*,  at(days_over_18_election = (0) age_18_or_over_election = (1)) post  base level(84)
estimates store above_18_thresh_quad_MM


coefplot 	(below_18_thresh_quad_MM, recast(scatter) mcolor(gs8) lpattern(solid) lwidth(medium) ciopts(recast(rspike) lwidth(thin) lcolor(gs8*.55))) /// 			
			(above_18_thresh_quad_MM, recast(scatter) mcolor(black) lpattern(solid) lwidth(medium) ciopts(recast(rspike) lwidth(thin) lcolor(black*.55))) /// 
			, 	omitted baselevels ///
				level(84) horizontal format(%9.1f) ///
				xline(0.5, lcolor(red) lwidth(medium) lpattern(solid)) xtitle("Marginal Mean", size(medium)) 	///
				ytitle("", size(medium)) ylabel( , labsize(small))		///
				legend(on order(2 "Just Under 18 (Voluntary Voting)" 4 "Just Over 18 (Compulsory Voting)") size(small) rows(2)) title("") graphregion(color(white)) ///
				scheme(s1color) xsize(12) ysize(17) scale(.7) 	///
				xlabel(.1(.1).9) xscale(range(.1 .9)) ///
				graphregion(color(white) margin(tiny)) ///
					coeflabels( 								///
					0.at_encoded_family  = 				"No Information on Family"   	///
					0.at_encoded_gender  = 				"Male"   	///
					0.at_encoded_favorite_music  =  	"No Favorite Type of Music"   	///
					0.at_encoded_favorite_food =  		"No Favorite Type of Food"   	///
					0.at_encoded_experience = 	 		"No Experience in Office"   	///
					0.at_encoded_opinion_abortion = 	"No Position on Abortion"   	///
					0.at_encoded_opinion_deficit  = 	"No Position on Deficit" 		/// 
					0.at_encoded_opinion_IMF  = 	 	"No Position on IMF Loans"   	///
					) ///
				graphregion(margin(small)) ///
				yline(4.5 8.5 11.5 15.5 17.5 22.5 27.5, lcolor(black) lwidth(medthick)) ///
				grid(nogextend) name(conjoint_18_thresh_quad_MM, replace)
		
		
***
*Combine the AMCE and MM graphs.
***
grc1leg ///
conjoint_18_thresh_quad_AMCE ///
conjoint_18_thresh_quad_MM ///
	,	rows(1) graphregion(margin(none)) scheme(s1mono)  scale(.9) 

*the following lines make some aesthetic adjustments with Graph Editor	
gr_edit .legend.Edit, style(cols(2)) style(rows(0)) keepstyles
gr_edit .legend.Edit, style(labelstyle(size(vsmall)))
gr_edit .legend.xoffset = 9
gr_edit .legend.plotregion1.key[1].view.style.editstyle marker(size(small)) editcopy
gr_edit .legend.plotregion1.key[2].view.style.editstyle marker(size(small)) editcopy
gr_edit .style.editstyle declared_ysize(8) editcopy
gr_edit .style.editstyle declared_xsize(11) editcopy



**************
**************
*Figure SI23
**************
**************

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_Conjoint_CPS.dta", clear

		

***
*Reorder the attribute variables for graphing purposes. 
***				
order at_encoded_opinion_deficit at_encoded_opinion_IMF  at_encoded_opinion_abortion at_encoded_experience at_encoded_gender at_encoded_family  at_encoded_favorite_music at_encoded_favorite_food, last 


***
*Calculate the AMCEs for those near the age 70 cutoff and plot them.
***	
reg vote_choice_conjoint  i.age_70_or_over_election##i.at_encoded*##c.days_over_70_election##c.days_over_70_election if days_over_70_election>=(-1095) & days_over_70_election<=(1095), cl(respondent) baselevels
estimates store conjoint_70_thresh_quad

estimates restore conjoint_70_thresh_quad
margins, dydx(at_encoded*) at(days_over_70_election = (0) age_70_or_over_election = (0)) post  base level(95)
estimates store below_70_thresh_quad_AMCE
 
estimates restore conjoint_70_thresh_quad
margins, dydx(at_encoded*) at(days_over_70_election = (0) age_70_or_over_election = (1)) post  base level(95)
estimates store above_70_thresh_quad_AMCE


coefplot 	(below_70_thresh_quad_AMCE, recast(scatter) mcolor(black) lpattern(solid) lwidth(medium) ciopts(recast(rspike) lwidth(thin) lcolor(black*.55))) ///
			(above_70_thresh_quad_AMCE, recast(scatter) mcolor(gs8) lpattern(solid) lwidth(medium) ciopts(recast(rspike) lwidth(thin) lcolor(gs8*.55))) /// 			
				, 	omitted baselevels ///
				level(95) horizontal format(%9.1f) ///
				xline(0, lcolor(red) lwidth(medium) lpattern(solid)) xtitle("Estimated AMCE", size(medium)) 	///
				ytitle("", size(medium)) ylabel( , labsize(small))		///
				legend(on order(2 "Just Under 70 (Compulsory Voting)" 4 "Just Over 70 (Voluntary Voting)") size(small) rows(2)) title("") graphregion(color(white)) ///
				scheme(s1color) xsize(12) ysize(17) scale(.7) 	///
				xlabel(-0.4(0.1)0.4) xscale(range(-0.4 .4)) ///
				graphregion(color(white) margin(tiny)) ///
					coeflabels( 								///
					0.at_encoded_family  = 				"{bf:Baseline: No Information on Family}"   	///
					0.at_encoded_gender  = 				"{bf:Baseline: Male}"   	///
					0.at_encoded_favorite_music  =  	"{bf:Baseline: No Favorite Type of Music}"   	///
					0.at_encoded_favorite_food =  		"{bf:Baseline: No Favorite Type of Food}"   	///
					0.at_encoded_experience = 	 		"{bf:Baseline: No Experience in Office}"   	///
					0.at_encoded_opinion_abortion = 	"{bf:Baseline: No Position on Abortion}"   	///
					0.at_encoded_opinion_deficit  = 	"{bf:Baseline: No Position on Deficit}" 		/// 
					0.at_encoded_opinion_IMF  = 	 	"{bf:Baseline: No Position on IMF Loans}"   	///
					) ///
				graphregion(margin(small)) ///
				yline(4.5 8.5 11.5 15.5 17.5 22.5 27.5, lcolor(black) lwidth(medthick)) ///
				grid(nogextend) name(conjoint_70_thresh_quad_AMCE, replace)

				
***
*Calculate the marginal means for those near the age 70 cutoff and plot them.
***		
reg vote_choice_conjoint  i.age_70_or_over_election##i.at_encoded*##c.days_over_70_election##c.days_over_70_election if days_over_70_election>=(-1095) & days_over_70_election<=(1095), cl(respondent) baselevels
estimates store conjoint_70_thresh_quad
					
estimates restore conjoint_70_thresh_quad
margins at_encoded*,  at(days_over_70_election = (0) age_70_or_over_election = (0)) post  base level(84)
estimates store below_70_thresh_quad_MM
 
estimates restore conjoint_70_thresh_quad
margins at_encoded*,  at(days_over_70_election = (0) age_70_or_over_election = (1)) post  base level(84)
estimates store above_70_thresh_quad_MM

coefplot 	(below_70_thresh_quad_MM, recast(scatter) mcolor(black) lpattern(solid) lwidth(medium) ciopts(recast(rspike) lwidth(thin) lcolor(black*.55))) ///
			(above_70_thresh_quad_MM, recast(scatter) mcolor(gs8) lpattern(solid) lwidth(medium) ciopts(recast(rspike) lwidth(thin) lcolor(gs8*.55))) /// 			
				, 	omitted baselevels ///
				level(84) horizontal format(%9.1f) ///
				xline(0.5, lcolor(red) lwidth(medium) lpattern(solid)) xtitle("Marginal Mean", size(medium)) 	///
				ytitle("", size(medium)) ylabel( , labsize(small))		///
				legend(on order(2 "Just Under 70 (Compulsory Voting)" 4 "Just Over 70 (Voluntary Voting)") size(small) rows(2)) title("") graphregion(color(white)) ///
				scheme(s1color) xsize(12) ysize(17) scale(.7) 	///
				xlabel(.1(.1).9) xscale(range(.1 .9)) ///
				graphregion(color(white) margin(tiny)) ///
					coeflabels( 								///
					0.at_encoded_family  = 				"No Information on Family"   	///
					0.at_encoded_gender  = 				"Male"   	///
					0.at_encoded_favorite_music  =  	"No Favorite Type of Music"   	///
					0.at_encoded_favorite_food =  		"No Favorite Type of Food"   	///
					0.at_encoded_experience = 	 		"No Experience in Office"   	///
					0.at_encoded_opinion_abortion = 	"No Position on Abortion"   	///
					0.at_encoded_opinion_deficit  = 	"No Position on Deficit" 		/// 
					0.at_encoded_opinion_IMF  = 	 	"No Position on IMF Loans"   	///
					) ///
				graphregion(margin(small)) ///
				yline(4.5 8.5 11.5 15.5 17.5 22.5 27.5, lcolor(black) lwidth(medthick)) ///
				grid(nogextend) name(conjoint_70_thresh_quad_MM, replace)


***
*Combine the AMCE and MM graphs.
***
grc1leg ///
conjoint_70_thresh_quad_AMCE ///
conjoint_70_thresh_quad_MM ///
	,	rows(1) graphregion(margin(none)) scheme(s1mono)  scale(.9) 

*the following lines make some aesthetic adjustments with Graph Editor	
gr_edit .legend.Edit, style(cols(2)) style(rows(0)) keepstyles
gr_edit .legend.Edit, style(labelstyle(size(vsmall)))
gr_edit .legend.xoffset = 9
gr_edit .legend.plotregion1.key[1].view.style.editstyle marker(size(small)) editcopy
gr_edit .legend.plotregion1.key[2].view.style.editstyle marker(size(small)) editcopy
gr_edit .style.editstyle declared_ysize(8) editcopy
gr_edit .style.editstyle declared_xsize(11) editcopy

				

**************
**************
*Figure SI24
**************
**************

***
*Import the CSV file that first needs to be generated with "Replication, Power Analysis.R" 
***
clear                                                                      								
import delimited "Figure_SI24_data.csv"
tostring delta3, gen(delta3_string) force //*There is a very small decimal attached to each value of delta3, so turn it into a string variable for graphing purposes. 


***
*Make the graph. 
***
sort  delta3_string n
twoway ///
		line power n if delta3_string == ".0799999982", connect(ascending) lcolor(red*.65) lwidth(medthick) ///
	|| 	line power n if delta3_string == ".0900000036", connect(ascending) lcolor(blue*.65) lwidth(medthick) ///
	|| 	line power n if delta3_string == ".1000000015", connect(ascending) lcolor(black*100) lwidth(medthick) ///
	|| 	line power n if delta3_string == ".1099999994", connect(ascending) lcolor(green*.65) lwidth(medthick) ///
	|| 	line power n if delta3_string == ".1199999973", connect(ascending) lcolor(orange*.65)  lwidth(medthick) ///
	||	scatteri .12 12510 "Effective N for Age 18 Tests", color(black) mlabposition(12) mlabangle(90) mlabsize(vsmall) mlabcolor(black) msymbol(none) msize(medium)  ///
	||	scatteri .12 7630 "Effective N for Age 70 Tests", color(black) mlabposition(12) mlabangle(90) mlabsize(vsmall) mlabcolor(black) msymbol(none) msize(medium)    ///
	||	scatteri .72 5000 "benchmark", color(black) mlabposition(12) mlabangle(51) mlabsize(vsmall) mlabcolor(black) msymbol(none) msize(medium)    ///
		,	ytitle("Power", size(medium)) ///
			ylabel(0(.2)1, labsize(small)) ///
			xlabel(0(5000)15000, labsize(small)) ///
			xsize(4.75)   xtitle("Effective Sample Size", size(medium)) ///			
			scheme(s1color) xline(7770 12650, lcolor(black*100) lpattern(dash)) ///
			yline(.8, lcolor(black*.50) lpattern(solid)) ///
			legend(on position(3) symxs(*.25)  order(1 "{&Delta} = .08"  2 "{&Delta} = .09" 3 "{&Delta} = .10" 4 "{&Delta} = .11" 5 "{&Delta} = .12" ) size(vsmall) rows(5)) title("") graphregion(color(white) margin(tiny)) 

			
			
**************
**************
*Figure SI25
**************
**************			

***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_CPS.dta", clear


***
*Create the graph for those near the age 18 cutoff. 
***

*do the polynomial regressions
lpoly pol_int     days_over_18_election if days_over_18_election<0 & days_over_18_election>=-730, nograph gen(sa1 sb1) se(se1) kernel(epanechnikov) bw(150) n(500)
disp r(N)
gen lb1 = sb1 - 1.41*se1 //*1.41 is the critical t for an 84% CI
gen ub1 = sb1 + 1.41*se1 

lpoly pol_int   days_over_18_election if days_over_18_election>0 & days_over_18_election<=730, nograph gen(sa0 sb0) se(se0) kernel(epanechnikov) bw(150) n(500)
disp r(N)
gen lb0 = sb0 - 1.41*se0 
gen ub0 = sb0 + 1.41*se0 


*make the graph
twoway ///
	scatter pol_int    days_over_18_election if days_over_18_election>0 & days_over_18_election<=730 , jitter(1.45) jitterseed(999) msymbol(Oh) msize(vsmall) mcolor(black) mlwidth(vthin) || 	///
	scatter pol_int    days_over_18_election if days_over_18_election<0 & days_over_18_election>=-730 , jitter(1.45) jitterseed(999) msymbol(Oh) msize(vsmall) mcolor(gs8) mlwidth(vthin) || 	///
	line sb0 sa0  if sa0<=730 , lcolor(black) lwidth(medthick) lpattern(solid) || ///
	line sb1 sa1  if sa1>=-730 , lcolor(gs8) lpattern(solid) lwidth(medthick) || 	///
	line ub0 sa0  if sa0<=730 , lcolor(black) lwidth(medium) lpattern(dash) || ///
	line lb0 sa0  if sa0<=730 , lcolor(black) lwidth(medium) lpattern(dash) || 	///
	line ub1 sa1  if sa1>=-730 , lcolor(gs8) lwidth(medium) lpattern(dash) || ///
	line lb1 sa1  if sa1>=-730 , lcolor(gs8) lwidth(medium) lpattern(dash) || ///
	pci .91 0  4.09 0, lcolor(gs3) lwidth(thick) lpattern(solid) yaxis(2) || ///
	, 	xtitle("Days Over Age 18 on Election Day", size(medium)) /// 
		xline(0,  lcolor(gs3) lwidth(thick) lpattern(solid)) ///
		ytitle("Expected Political Interest", size(medsmall))   ///   
		legend(off) title("") graphregion(color(white) margin(small))      ///
		scheme(s1color) xsize(6) xscale(range(-735 735)) ysize(5) ylabel(1(1)4) yscale(range(.91 4.09)) ///
		xlabel(-1100 (275) 1100, labsize(small)) ylabel(, labsize(small)) ///
		ylabel(1 "None" 2 "Litte"  3 "Some" 4 "A Lot",  labsize(vsmall) axis(2))  ytitle("", axis(2)) 	///
		name(lpoly_18_thresh_pol_int, replace) 

drop sa1-ub0 


***
*Create the graph for those near the age 70 cutoff. 
***
lpoly pol_int     days_over_70_election if days_over_70_election<0 & days_over_70_election>=-1095, nograph gen(sa1 sb1) se(se1) kernel(epanechnikov) bw(150) n(500)
disp r(N)
gen lb1 = sb1 - 1.41*se1 //*1.41 is the critical t for an 84% CI
gen ub1 = sb1 + 1.41*se1 

lpoly pol_int   days_over_70_election if days_over_70_election>0 & days_over_70_election<=1095, nograph gen(sa0 sb0) se(se0) kernel(epanechnikov) bw(150) n(500)
disp r(N)
gen lb0 = sb0 - 1.41*se0 
gen ub0 = sb0 + 1.41*se0 


*make the graph
twoway ///
	scatter pol_int    days_over_70_election if days_over_70_election>0 & days_over_70_election<=1095 , jitter(1.45) jitterseed(999) msymbol(Oh) msize(vsmall) mcolor(gs8) mlwidth(vthin) || 	///
	scatter pol_int    days_over_70_election if days_over_70_election<0 & days_over_70_election>=-1095 , jitter(1.45) jitterseed(999) msymbol(Oh) msize(vsmall) mcolor(black) mlwidth(vthin) || 	///
	line sb0 sa0  if sa0<=1095 , lcolor(gs8) lwidth(medthick) lpattern(solid) || ///
	line sb1 sa1 if sa1>=-1095 , lcolor(black) lpattern(solid) lwidth(medthick) || 	///
	line ub0 sa0  if sa0<=1095 , lcolor(gs8) lwidth(medium) lpattern(dash) || ///
	line lb0 sa0  if sa0<=1095 , lcolor(gs8) lwidth(medium) lpattern(dash) || 	///
	line ub1 sa1  if sa1>=-1095 , lcolor(black) lwidth(medium) lpattern(dash) || ///
	line lb1 sa1  if sa1>=-1095 , lcolor(black) lwidth(medium) lpattern(dash) || ///
	pci .91 0  4.09 0, lcolor(gs3) lwidth(thick) lpattern(solid) yaxis(2) || ///
	, 	xtitle("Days Over Age 70 on Election Day", size(medium)) /// 
		xline(0,  lcolor(gs3) lwidth(thick) lpattern(solid)) ///
		ytitle("Expected Political Interest", size(medsmall))   ///   
		legend(off) title("") graphregion(color(white) margin(small))      ///
		scheme(s1color) xsize(6) xscale(range(-1100 1100)) ysize(5) ylabel(1(1)4) yscale(range(.91 4.09)) ///
		xlabel(-1100 (275) 1100, labsize(small)) ylabel(, labsize(small)) ///
		ylabel(1 "None" 2 "Litte"  3 "Some" 4 "A Lot",  labsize(vsmall) axis(2))  ytitle("", axis(2)) 	///
		name(lpoly_70_thresh_pol_int, replace) 
	
drop sa1-ub0 
	

***
*Combine the graphs for those near the age 18 and 70 cutoffs. 
***
graph combine  	///
	lpoly_18_thresh_pol_int 	///
	lpoly_70_thresh_pol_int 	///
	, rows(1) scheme(s1mono) xcommon ysize(5) xsize(11) scale(1.5) graphregion(margin(zero))
		
		
		
**************
**************
*Evidence for Claim Made in the Text: "For the younger age group, the estimated effect of being compelled to 
*vote on interest is 0.042 (p = 0.860). For the older age group, it is 0.116 (p = 0.535)."
**************
**************	
	
***
*Open the required data set.
***
use "Argentina_2019_Gen_Elec_Survey_CPS.dta", clear
	
	
***
*Get the regression discontinuity optimal bandwidths for the younger group. 
***
rdbwselect pol_int days_over_18_election if days_over_18_election<=730 & days_over_18_election>=-730, c(0) p(2) kernel(uniform) all //*only allowing in observations within two years of age above and below 18
global h_CCT_pol_int_18 = e(h_CCT)

***
*Estimate the RD model for the younger group.
***
reg pol_int i.age_18_or_over_election##c.days_over_18_election if days_over_18_election>=-$h_CCT_pol_int_18 & days_over_18_election<=$h_CCT_pol_int_18
		
		
***
*Get the regression discontinuity optimal bandwidths for the older group. 
***
rdbwselect pol_int days_over_70_election if days_over_70_election<=1095 & days_over_70_election>=-1095, c(0) p(2) kernel(uniform) all //*only allowing in observations within two years of age above and below 70
global h_CCT_pol_int_70 = e(h_CCT) 

***
*Estimate the RD model for the older group.
***
reg pol_int i.age_70_or_over_election##c.days_over_70_election if days_over_70_election>=-$h_CCT_pol_int_70 & days_over_70_election<=$h_CCT_pol_int_70




	
